diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml index 6ecb10d0..10fb15d8 100644 --- a/.github/workflows/testing.yml +++ b/.github/workflows/testing.yml @@ -13,12 +13,11 @@ on: jobs: build: - runs-on: ${{ matrix.os }} + runs-on: ubuntu-latest strategy: matrix: - os: [ubuntu-latest] - python-version: [3.6, 3.7, 3.8, 3.9] + python-version: ["3.6", "3.7", "3.8", "3.9", "3.10"] steps: - uses: actions/checkout@v2 diff --git a/CHANGELOG b/CHANGELOG index c6e1d886..32c64f3f 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,5 +1,33 @@ # Change Log +## 2.2.26 08/10/2021 + +* Release web UI 2.2.26 +* Sort symbols by theme. Fixes https://github.com/GNS3/gns3-gui/issues/3230 +* Fix memory percentage left warning. Fixes #1966 +* Update affinity symbols. Fixes https://github.com/GNS3/gns3-gui/issues/3232 + +## 2.2.25 14/09/2021 + +* Release web UI 2.2.25 +* Fix issue preventing to use custom nested symbols. Fixes #1969 +* Updated affinity symbols +* Fix qemu-img rebase code to support Qemu 6.1. Ref https://github.com/GNS3/gns3-server/pull/1962 +* Reinstate qemu-img rebase +* Return disk usage for partition that contains the default project directory. Fixes #1947 +* Explicitly require setuptools, utils/get_resource.py imports pkg_resources + +## 2.2.24 25/08/2021 + +* Release web UI 2.2.24 +* Fix issue when searching for image with relative path. Fixes #1925 +* Fix wrong error when NAT interface is not allowed. Fixes #1943 +* Fix incorrect Qemu binary selected when importing template. Fixes https://github.com/GNS3/gns3-gui/issues/3216 +* Fix error when updating a link style. Fixes https://github.com/GNS3/gns3-gui/issues/2461 +* Some fixes for early support for Python3.10 The loop parameter has been removed from most of asyncio‘s high-level API following deprecation in Python 3.8. +* Early support for Python3.10 Fixes #1940 +* Bump pywin32 from 300 to 301 + ## 2.2.23 05/08/2021 * Release web UI 2.2.23 diff --git a/Dockerfile b/Dockerfile index 3ff8b9d3..d6df9536 100644 --- a/Dockerfile +++ b/Dockerfile @@ -14,9 +14,8 @@ RUN set -eux \ && apk add --no-cache --virtual .build-deps build-base \ gcc libc-dev musl-dev linux-headers python3-dev \ vpcs qemu libvirt ubridge \ - && pip install --upgrade pip setuptools wheel \ - && pip install -r /gns3server/requirements.txt \ - && rm -rf /root/.cache/pip + && pip install --no-cache-dir --upgrade pip setuptools wheel \ + && pip install --no-cache-dir -r /gns3server/requirements.txt COPY . /gns3server RUN python3 setup.py install diff --git a/README.rst b/README.rst index 3c70ede9..37d5523e 100644 --- a/README.rst +++ b/README.rst @@ -32,6 +32,11 @@ In addition of Python dependencies listed in a section below, other software may * mtools is recommended to support data transfer to/from QEMU VMs using virtual disks. * i386-libraries of libc and libcrypto are optional (Linux only), they are only needed to run IOU based nodes. +Docker support +************** + +Docker support needs the script program (`bsdutils` or `util-linux` package), when running a docker VM and a static busybox during installation (python3 setup.py install / pip3 install / package creation). + Branches -------- diff --git a/conf/gns3_server.conf b/conf/gns3_server.conf index 8560d59d..a5864c5a 100644 --- a/conf/gns3_server.conf +++ b/conf/gns3_server.conf @@ -68,7 +68,7 @@ password = gns3 ; It cannot be changed once the server has started once default_admin_username = "admin" -; Initial default super admin username +; Initial default super admin password ; It cannot be changed once the server has started once default_admin_password = "admin" diff --git a/gns3server/api/routes/compute/qemu_nodes.py b/gns3server/api/routes/compute/qemu_nodes.py index 66ce046a..d60625d5 100644 --- a/gns3server/api/routes/compute/qemu_nodes.py +++ b/gns3server/api/routes/compute/qemu_nodes.py @@ -139,13 +139,6 @@ async def start_qemu_node(node: QemuVM = Depends(dep_node)) -> Response: Start a Qemu node. """ - qemu_manager = Qemu.instance() - hardware_accel = qemu_manager.config.settings.Qemu.enable_hardware_acceleration - if hardware_accel and "-machine accel=tcg" not in node.options: - pm = ProjectManager.instance() - if pm.check_hardware_virtualization(node) is False: - pass # FIXME: check this - # raise ComputeError("Cannot start VM with hardware acceleration (KVM/HAX) enabled because hardware virtualization (VT-x/AMD-V) is already used by another software like VMware or VirtualBox") await node.start() return Response(status_code=status.HTTP_204_NO_CONTENT) diff --git a/gns3server/api/routes/controller/__init__.py b/gns3server/api/routes/controller/__init__.py index 71e0cc02..7f6cdcdd 100644 --- a/gns3server/api/routes/controller/__init__.py +++ b/gns3server/api/routes/controller/__init__.py @@ -28,6 +28,7 @@ from . import projects from . import snapshots from . import symbols from . import templates +from . import images from . import users from . import groups from . import roles @@ -61,9 +62,17 @@ router.include_router( tags=["Permissions"] ) +router.include_router( + images.router, + dependencies=[Depends(get_current_active_user)], + prefix="/images", + tags=["Images"] +) + router.include_router( templates.router, dependencies=[Depends(get_current_active_user)], + prefix="/templates", tags=["Templates"] ) diff --git a/gns3server/api/routes/controller/appliances.py b/gns3server/api/routes/controller/appliances.py index 89dbe281..550473e1 100644 --- a/gns3server/api/routes/controller/appliances.py +++ b/gns3server/api/routes/controller/appliances.py @@ -18,22 +18,106 @@ API routes for appliances. """ -from fastapi import APIRouter +import logging + +from fastapi import APIRouter, Depends, Response, status from typing import Optional, List +from uuid import UUID + +from gns3server import schemas +from gns3server.controller import Controller +from gns3server.controller.controller_error import ( + ControllerError, + ControllerBadRequestError, + ControllerNotFoundError +) + +from gns3server.db.repositories.images import ImagesRepository +from gns3server.db.repositories.templates import TemplatesRepository +from gns3server.db.repositories.rbac import RbacRepository + +from .dependencies.authentication import get_current_active_user +from .dependencies.database import get_repository + +log = logging.getLogger(__name__) router = APIRouter() @router.get("") -async def get_appliances(update: Optional[bool] = False, symbol_theme: Optional[str] = "Classic") -> List[dict]: +async def get_appliances( + update: Optional[bool] = False, + symbol_theme: Optional[str] = "Classic" +) -> List[schemas.Appliance]: """ Return all appliances known by the controller. """ - from gns3server.controller import Controller - controller = Controller.instance() if update: await controller.appliance_manager.download_appliances() controller.appliance_manager.load_appliances(symbol_theme=symbol_theme) return [c.asdict() for c in controller.appliance_manager.appliances.values()] + + +@router.get("/{appliance_id}") +def get_appliance(appliance_id: UUID) -> schemas.Appliance: + """ + Get an appliance file. + """ + + controller = Controller.instance() + appliance = controller.appliance_manager.appliances.get(str(appliance_id)) + if not appliance: + raise ControllerNotFoundError(message=f"Could not find appliance '{appliance_id}'") + return appliance.asdict() + + +@router.post("/{appliance_id}/version", status_code=status.HTTP_201_CREATED) +def add_appliance_version(appliance_id: UUID, appliance_version: schemas.ApplianceVersion) -> schemas.Appliance: + """ + Add a version to an appliance + """ + + controller = Controller.instance() + appliance = controller.appliance_manager.appliances.get(str(appliance_id)) + if not appliance: + raise ControllerNotFoundError(message=f"Could not find appliance '{appliance_id}'") + + if not appliance.versions: + raise ControllerBadRequestError(message=f"Appliance '{appliance_id}' do not have versions") + + if not appliance_version.images: + raise ControllerBadRequestError(message=f"Version '{appliance_version.name}' must contain images") + + for version in appliance.versions: + if version.get("name") == appliance_version.name: + raise ControllerError(message=f"Appliance '{appliance_id}' already has version '{appliance_version.name}'") + + appliance.versions.append(appliance_version.dict(exclude_unset=True)) + return appliance.asdict() + + +@router.post("/{appliance_id}/install", status_code=status.HTTP_204_NO_CONTENT) +async def install_appliance( + appliance_id: UUID, + version: Optional[str] = None, + images_repo: ImagesRepository = Depends(get_repository(ImagesRepository)), + templates_repo: TemplatesRepository = Depends(get_repository(TemplatesRepository)), + current_user: schemas.User = Depends(get_current_active_user), + rbac_repo: RbacRepository = Depends(get_repository(RbacRepository)) +) -> Response: + """ + Install an appliance. + """ + + controller = Controller.instance() + await controller.appliance_manager.install_appliance( + appliance_id, + version, + images_repo, + templates_repo, + rbac_repo, + current_user + ) + return Response(status_code=status.HTTP_204_NO_CONTENT) diff --git a/gns3server/api/routes/controller/groups.py b/gns3server/api/routes/controller/groups.py index b9ac05c4..c29a6fc1 100644 --- a/gns3server/api/routes/controller/groups.py +++ b/gns3server/api/routes/controller/groups.py @@ -25,6 +25,7 @@ from typing import List from gns3server import schemas from gns3server.controller.controller_error import ( + ControllerError, ControllerBadRequestError, ControllerNotFoundError, ControllerForbiddenError, @@ -126,7 +127,7 @@ async def delete_user_group( success = await users_repo.delete_user_group(user_group_id) if not success: - raise ControllerNotFoundError(f"User group '{user_group_id}' could not be deleted") + raise ControllerError(f"User group '{user_group_id}' could not be deleted") return Response(status_code=status.HTTP_204_NO_CONTENT) diff --git a/gns3server/api/routes/controller/images.py b/gns3server/api/routes/controller/images.py new file mode 100644 index 00000000..d8d8e193 --- /dev/null +++ b/gns3server/api/routes/controller/images.py @@ -0,0 +1,169 @@ +# +# Copyright (C) 2021 GNS3 Technologies Inc. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +""" +API routes for images. +""" + +import os +import logging +import urllib.parse + +from fastapi import APIRouter, Request, Response, Depends, status +from sqlalchemy.orm.exc import MultipleResultsFound +from typing import List, Optional +from gns3server import schemas + +from gns3server.utils.images import InvalidImageError, default_images_directory, write_image +from gns3server.db.repositories.images import ImagesRepository +from gns3server.db.repositories.templates import TemplatesRepository +from gns3server.db.repositories.rbac import RbacRepository +from gns3server.controller import Controller +from gns3server.controller.controller_error import ( + ControllerError, + ControllerNotFoundError, + ControllerForbiddenError, + ControllerBadRequestError +) + +from .dependencies.authentication import get_current_active_user +from .dependencies.database import get_repository + +log = logging.getLogger(__name__) + +router = APIRouter() + + +@router.get("", response_model=List[schemas.Image]) +async def get_images( + images_repo: ImagesRepository = Depends(get_repository(ImagesRepository)), +) -> List[schemas.Image]: + """ + Return all images. + """ + + return await images_repo.get_images() + + +@router.post("/upload/{image_path:path}", response_model=schemas.Image, status_code=status.HTTP_201_CREATED) +async def upload_image( + image_path: str, + request: Request, + image_type: schemas.ImageType = schemas.ImageType.qemu, + images_repo: ImagesRepository = Depends(get_repository(ImagesRepository)), + templates_repo: TemplatesRepository = Depends(get_repository(TemplatesRepository)), + current_user: schemas.User = Depends(get_current_active_user), + rbac_repo: RbacRepository = Depends(get_repository(RbacRepository)), + install_appliances: Optional[bool] = True +) -> schemas.Image: + """ + Upload an image. + + Example: curl -X POST http://host:port/v3/images/upload/my_image_name.qcow2?image_type=qemu \ + -H 'Authorization: Bearer ' --data-binary @"/path/to/image.qcow2" + """ + + image_path = urllib.parse.unquote(image_path) + image_dir, image_name = os.path.split(image_path) + directory = default_images_directory(image_type) + full_path = os.path.abspath(os.path.join(directory, image_dir, image_name)) + if os.path.commonprefix([directory, full_path]) != directory: + raise ControllerForbiddenError(f"Cannot write image, '{image_path}' is forbidden") + + if await images_repo.get_image(image_path): + raise ControllerBadRequestError(f"Image '{image_path}' already exists") + + try: + image = await write_image(image_name, image_type, full_path, request.stream(), images_repo) + except (OSError, InvalidImageError) as e: + raise ControllerError(f"Could not save {image_type} image '{image_path}': {e}") + + if install_appliances: + # attempt to automatically create templates based on image checksum + await Controller.instance().appliance_manager.install_appliances_from_image( + image_path, + image.checksum, + images_repo, + templates_repo, + rbac_repo, + current_user, + directory + ) + + return image + + +@router.get("/{image_path:path}", response_model=schemas.Image) +async def get_image( + image_path: str, + images_repo: ImagesRepository = Depends(get_repository(ImagesRepository)), +) -> schemas.Image: + """ + Return an image. + """ + + image_path = urllib.parse.unquote(image_path) + image = await images_repo.get_image(image_path) + if not image: + raise ControllerNotFoundError(f"Image '{image_path}' not found") + return image + + +@router.delete("/{image_path:path}", status_code=status.HTTP_204_NO_CONTENT) +async def delete_image( + image_path: str, + images_repo: ImagesRepository = Depends(get_repository(ImagesRepository)), +) -> None: + """ + Delete an image. + """ + + image_path = urllib.parse.unquote(image_path) + + try: + image = await images_repo.get_image(image_path) + except MultipleResultsFound: + raise ControllerBadRequestError(f"Image '{image_path}' matches multiple images. " + f"Please include the relative path of the image") + + if not image: + raise ControllerNotFoundError(f"Image '{image_path}' not found") + + templates = await images_repo.get_image_templates(image.image_id) + if templates: + template_names = ", ".join([template.name for template in templates]) + raise ControllerError(f"Image '{image_path}' is used by one or more templates: {template_names}") + + try: + os.remove(image.path) + except OSError: + log.warning(f"Could not delete image file {image.path}") + + success = await images_repo.delete_image(image_path) + if not success: + raise ControllerError(f"Image '{image_path}' could not be deleted") + + +@router.post("/prune", status_code=status.HTTP_204_NO_CONTENT) +async def prune_images( + images_repo: ImagesRepository = Depends(get_repository(ImagesRepository)), +) -> Response: + """ + Prune images not attached to any template. + """ + + await images_repo.prune_images() + return Response(status_code=status.HTTP_204_NO_CONTENT) diff --git a/gns3server/api/routes/controller/nodes.py b/gns3server/api/routes/controller/nodes.py index c175d583..0f28eb73 100644 --- a/gns3server/api/routes/controller/nodes.py +++ b/gns3server/api/routes/controller/nodes.py @@ -260,6 +260,28 @@ async def reload_node(node: Node = Depends(dep_node)) -> Response: return Response(status_code=status.HTTP_204_NO_CONTENT) +@router.post("/{node_id}/isolate", status_code=status.HTTP_204_NO_CONTENT) +async def isolate_node(node: Node = Depends(dep_node)) -> Response: + """ + Isolate a node (suspend all attached links). + """ + + for link in node.links: + await link.update_suspend(True) + return Response(status_code=status.HTTP_204_NO_CONTENT) + + +@router.post("/{node_id}/unisolate", status_code=status.HTTP_204_NO_CONTENT) +async def unisolate_node(node: Node = Depends(dep_node)) -> Response: + """ + Un-isolate a node (resume all attached suspended links). + """ + + for link in node.links: + await link.update_suspend(False) + return Response(status_code=status.HTTP_204_NO_CONTENT) + + @router.get("/{node_id}/links", response_model=List[schemas.Link], response_model_exclude_unset=True) async def get_node_links(node: Node = Depends(dep_node)) -> List[schemas.Link]: """ diff --git a/gns3server/api/routes/controller/permissions.py b/gns3server/api/routes/controller/permissions.py index 8667903c..504f2c59 100644 --- a/gns3server/api/routes/controller/permissions.py +++ b/gns3server/api/routes/controller/permissions.py @@ -36,6 +36,7 @@ from gns3server.controller.controller_error import ( from gns3server.db.repositories.rbac import RbacRepository from .dependencies.database import get_repository +from .dependencies.authentication import get_current_active_user import logging @@ -59,6 +60,7 @@ async def get_permissions( async def create_permission( request: Request, permission_create: schemas.PermissionCreate, + current_user: schemas.User = Depends(get_current_active_user), rbac_repo: RbacRepository = Depends(get_repository(RbacRepository)) ) -> schemas.Permission: """ @@ -82,11 +84,16 @@ async def create_permission( # the permission can match multiple routes if permission_create.path.endswith("/*"): - route_path += r"/\*" + route_path += r"/.*" if re.fullmatch(route_path, permission_create.path): for method in permission_create.methods: if method in list(route.methods): + # check user has the right to add the permission (i.e has already to right on the path) + if not await rbac_repo.check_user_is_authorized(current_user.user_id, method, permission_create.path): + raise ControllerForbiddenError(f"User '{current_user.username}' doesn't have the rights to " + f"add a permission on {method} {permission_create.path} or " + f"the endpoint doesn't exist") return await rbac_repo.create_permission(permission_create) raise ControllerBadRequestError(f"Permission '{permission_create.methods} {permission_create.path}' " diff --git a/gns3server/api/routes/controller/roles.py b/gns3server/api/routes/controller/roles.py index 8da951d6..f0ed7f1f 100644 --- a/gns3server/api/routes/controller/roles.py +++ b/gns3server/api/routes/controller/roles.py @@ -25,6 +25,7 @@ from typing import List from gns3server import schemas from gns3server.controller.controller_error import ( + ControllerError, ControllerBadRequestError, ControllerNotFoundError, ControllerForbiddenError, @@ -119,7 +120,7 @@ async def delete_role( success = await rbac_repo.delete_role(role_id) if not success: - raise ControllerNotFoundError(f"Role '{role_id}' could not be deleted") + raise ControllerError(f"Role '{role_id}' could not be deleted") return Response(status_code=status.HTTP_204_NO_CONTENT) diff --git a/gns3server/api/routes/controller/templates.py b/gns3server/api/routes/controller/templates.py index 4f1914b5..c5982212 100644 --- a/gns3server/api/routes/controller/templates.py +++ b/gns3server/api/routes/controller/templates.py @@ -25,14 +25,15 @@ import logging log = logging.getLogger(__name__) -from fastapi import APIRouter, Request, Response, HTTPException, Depends, Response, status -from typing import List +from fastapi import APIRouter, Request, HTTPException, Depends, Response, status +from typing import List, Optional from uuid import UUID from gns3server import schemas from gns3server.db.repositories.templates import TemplatesRepository from gns3server.services.templates import TemplatesService from gns3server.db.repositories.rbac import RbacRepository +from gns3server.db.repositories.images import ImagesRepository from .dependencies.authentication import get_current_active_user from .dependencies.database import get_repository @@ -42,7 +43,7 @@ responses = {404: {"model": schemas.ErrorMessage, "description": "Could not find router = APIRouter(responses=responses) -@router.post("/templates", response_model=schemas.Template, status_code=status.HTTP_201_CREATED) +@router.post("", response_model=schemas.Template, status_code=status.HTTP_201_CREATED) async def create_template( template_create: schemas.TemplateCreate, templates_repo: TemplatesRepository = Depends(get_repository(TemplatesRepository)), @@ -59,7 +60,7 @@ async def create_template( return template -@router.get("/templates/{template_id}", response_model=schemas.Template, response_model_exclude_unset=True) +@router.get("/{template_id}", response_model=schemas.Template, response_model_exclude_unset=True) async def get_template( template_id: UUID, request: Request, @@ -81,7 +82,7 @@ async def get_template( return template -@router.put("/templates/{template_id}", response_model=schemas.Template, response_model_exclude_unset=True) +@router.put("/{template_id}", response_model=schemas.Template, response_model_exclude_unset=True) async def update_template( template_id: UUID, template_update: schemas.TemplateUpdate, @@ -94,13 +95,12 @@ async def update_template( return await TemplatesService(templates_repo).update_template(template_id, template_update) -@router.delete( - "/templates/{template_id}", - status_code=status.HTTP_204_NO_CONTENT, -) +@router.delete("/{template_id}", status_code=status.HTTP_204_NO_CONTENT) async def delete_template( template_id: UUID, + prune_images: Optional[bool] = False, templates_repo: TemplatesRepository = Depends(get_repository(TemplatesRepository)), + images_repo: RbacRepository = Depends(get_repository(ImagesRepository)), rbac_repo: RbacRepository = Depends(get_repository(RbacRepository)) ) -> Response: """ @@ -109,10 +109,12 @@ async def delete_template( await TemplatesService(templates_repo).delete_template(template_id) await rbac_repo.delete_all_permissions_with_path(f"/templates/{template_id}") + if prune_images: + await images_repo.prune_images() return Response(status_code=status.HTTP_204_NO_CONTENT) -@router.get("/templates", response_model=List[schemas.Template], response_model_exclude_unset=True) +@router.get("", response_model=List[schemas.Template], response_model_exclude_unset=True) async def get_templates( templates_repo: TemplatesRepository = Depends(get_repository(TemplatesRepository)), current_user: schemas.User = Depends(get_current_active_user), @@ -139,7 +141,7 @@ async def get_templates( return user_templates -@router.post("/templates/{template_id}/duplicate", response_model=schemas.Template, status_code=status.HTTP_201_CREATED) +@router.post("/{template_id}/duplicate", response_model=schemas.Template, status_code=status.HTTP_201_CREATED) async def duplicate_template( template_id: UUID, templates_repo: TemplatesRepository = Depends(get_repository(TemplatesRepository)), current_user: schemas.User = Depends(get_current_active_user), diff --git a/gns3server/api/routes/controller/users.py b/gns3server/api/routes/controller/users.py index 1bff6bfe..76b704f7 100644 --- a/gns3server/api/routes/controller/users.py +++ b/gns3server/api/routes/controller/users.py @@ -26,6 +26,7 @@ from typing import List from gns3server import schemas from gns3server.controller.controller_error import ( + ControllerError, ControllerBadRequestError, ControllerNotFoundError, ControllerForbiddenError, @@ -74,7 +75,7 @@ async def authenticate( ) -> schemas.Token: """ Alternative authentication method using json. - Example: curl http://host:port/v3/users/authenticate -d '{"username": "admin", "password": "admin"}' + Example: curl http://host:port/v3/users/authenticate -d '{"username": "admin", "password": "admin"} -H "Content-Type: application/json" ' """ user = await users_repo.authenticate_user(username=user_credentials.username, password=user_credentials.password) @@ -207,7 +208,7 @@ async def delete_user( success = await users_repo.delete_user(user_id) if not success: - raise ControllerNotFoundError(f"User '{user_id}' could not be deleted") + raise ControllerError(f"User '{user_id}' could not be deleted") return Response(status_code=status.HTTP_204_NO_CONTENT) diff --git a/gns3server/appliances/6wind-turbo-router.gns3a b/gns3server/appliances/6wind-turbo-router.gns3a index 56c4062b..0b089d4b 100644 --- a/gns3server/appliances/6wind-turbo-router.gns3a +++ b/gns3server/appliances/6wind-turbo-router.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "bf0a4dd0-9e1f-491e-918a-1d1ac0e23161", "name": "6WIND Turbo Router", "category": "router", "description": "6WIND Turbo Router is a high performance, ready-to-use software virtual router. It can be deployed bare metal or in virtual machines on commercial-off-the-shelf (COTS) servers. It is a carrier-grade solution for Service Prodivers aiming at using white boxes to deploy network functions. Typical use-cases are transit/peering router, IPsec VPN gateway and CGNAT.", diff --git a/gns3server/appliances/IPCop.gns3a b/gns3server/appliances/IPCop.gns3a index 2fdb1ef3..98476d38 100644 --- a/gns3server/appliances/IPCop.gns3a +++ b/gns3server/appliances/IPCop.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "c30ea423-b6f8-443e-b599-955ea5647ef0", "name": "IP Cop", "category": "firewall", "description": "The IPCop Firewall is a Linux firewall distribution. It is geared towards home and SOHO users. The IPCop web-interface is very user-friendly and makes usage easy.", diff --git a/gns3server/appliances/Simulator.gns3a b/gns3server/appliances/Simulator.gns3a index f2347c80..f59e33b7 100644 --- a/gns3server/appliances/Simulator.gns3a +++ b/gns3server/appliances/Simulator.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "2def5797-cb7d-429e-b85e-497ff4b81547", "name": "ParrotOS", "category": "guest", "description": " Parrot is a GNU/Linux distribution based on Debian Testing and designed with Security, Development and Privacy in mind. It includes a full portable laboratory for security and digital forensics experts, but it also includes all you need to develop your own software or protect your privacy while surfing the net.", diff --git a/gns3server/appliances/a10-vthunder.gns3a b/gns3server/appliances/a10-vthunder.gns3a index e36c2749..ec9ec434 100644 --- a/gns3server/appliances/a10-vthunder.gns3a +++ b/gns3server/appliances/a10-vthunder.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "7aa41b5b-3ae9-40a7-be38-5c109c59e086", "name": "A10 vThunder", "category": "router", "description": "vThunder, part of A10 Networks' award-winning A10 Thunder and AX Series Application Delivery Controller (ADC) family, is designed to meet the growing needs of organizations that require a flexible and easy-to-deploy application delivery and server load balancer solution running within a virtualized infrastructure.", diff --git a/gns3server/appliances/aaa.gns3a b/gns3server/appliances/aaa.gns3a index 4334d9af..7bb024ad 100644 --- a/gns3server/appliances/aaa.gns3a +++ b/gns3server/appliances/aaa.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "99920801-829d-4689-8231-7183c21ff878", "name": "AAA", "category": "guest", "description": "This appliance provides RADIUS and TACACS+ services with preconfigured users and groups.", diff --git a/gns3server/appliances/alcatel-7750.gns3a b/gns3server/appliances/alcatel-7750.gns3a index 1e2dc85b..872006d8 100644 --- a/gns3server/appliances/alcatel-7750.gns3a +++ b/gns3server/appliances/alcatel-7750.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "4d06be08-ce6d-4ee7-b5a7-79729fa75489", "name": "Alcatel 7750", "category": "router", "description": "The Alcatel-Lucent 7750 Service Router (SR) portfolio is a suite of multiservice edge routing platforms that deliver high performance, service richness, and creates exceptional value for networking in the cloud era. It is designed for the concurrent delivery of advanced residential, business and wireless broadband IP services, and provides cloud, data center and branch office connectivity for enterprise networking on a common IP edge routing platform.", diff --git a/gns3server/appliances/alpine-linux.gns3a b/gns3server/appliances/alpine-linux.gns3a index 0f870177..590e740b 100644 --- a/gns3server/appliances/alpine-linux.gns3a +++ b/gns3server/appliances/alpine-linux.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "fc520ae2-a4e5-48c3-9a13-516bb2e94668", "name": "Alpine Linux", "category": "guest", "description": "Alpine Linux is a security-oriented, lightweight Linux distribution based on musl libc and busybox.", diff --git a/gns3server/appliances/arista-ceos.gns3a b/gns3server/appliances/arista-ceos.gns3a index 84790a41..2fbd791a 100644 --- a/gns3server/appliances/arista-ceos.gns3a +++ b/gns3server/appliances/arista-ceos.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "a7eec173-9680-4c1f-bf79-1bf29d485375", "name": "cEOS", "category": "multilayer_switch", "description": "Arista cEOS\u2122 introduces the containerized packaging of EOS software and its agents for deployment in cloud infrastructure with the same proven EOS software image that runs on all Arista products. These flexible deployment options empower cloud network operators that are customizing their operating environments to provide a uniform workflow for development, testing and deployment of differentiated services.", diff --git a/gns3server/appliances/arista-veos.gns3a b/gns3server/appliances/arista-veos.gns3a index 7d49517e..5d75152c 100644 --- a/gns3server/appliances/arista-veos.gns3a +++ b/gns3server/appliances/arista-veos.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "c90f3ff3-4ed2-4437-9afb-21232fa92015", "name": "Arista vEOS", "category": "multilayer_switch", "description": "Arista EOS\u00ae is the core of Arista cloud networking solutions for next-generation data centers and cloud networks. Cloud architectures built with Arista EOS scale to tens of thousands of compute and storage nodes with management and provisioning capabilities that work at scale. Through its programmability, EOS enables a set of software applications that deliver workflow automation, high availability, unprecedented network visibility and analytics and rapid integration with a wide range of third-party applications for virtualization, management, automation and orchestration services.\n\nArista Extensible Operating System (EOS) is a fully programmable and highly modular, Linux-based network operation system, using familiar industry standard CLI and runs a single binary software image across the Arista switching family. Architected for resiliency and programmability, EOS has a unique multi-process state sharing architecture that separates state information and packet forwarding from protocol processing and application logic.", @@ -26,6 +27,13 @@ "kvm": "require" }, "images": [ + { + "filename": "vEOS-lab-4.26.2F.vmdk", + "version": "4.26.2F", + "md5sum": "de8ce9750fddb63bd3f71bccfcd7651e", + "filesize": 475332608, + "download_url": "https://www.arista.com/en/support/software-download" + }, { "filename": "vEOS-lab-4.25.3M.vmdk", "version": "4.25.3M", @@ -210,6 +218,13 @@ } ], "versions": [ + { + "name": "4.26.2F", + "images": { + "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", + "hdb_disk_image": "vEOS-lab-4.26.2F.vmdk" + } + }, { "name": "4.25.3M", "images": { diff --git a/gns3server/appliances/aruba-arubaoscx.gns3a b/gns3server/appliances/aruba-arubaoscx.gns3a index 16094598..bd84c1c8 100644 --- a/gns3server/appliances/aruba-arubaoscx.gns3a +++ b/gns3server/appliances/aruba-arubaoscx.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "8f074218-9d61-4e99-ab89-35ca19ad44ee", "name": "ArubaOS-CX Simulation Software", "category": "multilayer_switch", "description": "The ArubaOS-CX Simulation Software is a virtual platform to enable simulation of the ArubaOS-CX Network Operating System. Simulated networks can be created using many of the protocols in the ArubaOS-CX Operating system like OSPF, BGP (inc. EVPN). Key features like the Aruba Network Analytics Engine and the REST API can be simulated, providing a lightweight development platform to building the modern network.", diff --git a/gns3server/appliances/aruba-vgw.gns3a b/gns3server/appliances/aruba-vgw.gns3a index 17a709ed..6592a204 100644 --- a/gns3server/appliances/aruba-vgw.gns3a +++ b/gns3server/appliances/aruba-vgw.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "38c9e478-4a1d-4611-ac61-945d2f2ca376", "name": "Aruba VGW", "category": "firewall", "description": "Aruba Virtual Gateways allow customers to bring their public cloud infrastructure to the SD-WAN fabric and facilitate connectivity between branches and the public cloud.", diff --git a/gns3server/appliances/aruba-vmc.gns3a b/gns3server/appliances/aruba-vmc.gns3a index 35052627..52ba75d4 100644 --- a/gns3server/appliances/aruba-vmc.gns3a +++ b/gns3server/appliances/aruba-vmc.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "a51fbf46-6350-4db2-8dbc-e90704ed60ef", "name": "Aruba VMC", "category": "guest", "description": "Aruba Virtual Mobility Controller", diff --git a/gns3server/appliances/asterisk.gns3a b/gns3server/appliances/asterisk.gns3a index 8e080360..e89cec7b 100644 --- a/gns3server/appliances/asterisk.gns3a +++ b/gns3server/appliances/asterisk.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "b6319fe9-19d5-4a4d-a857-6eee3c92ca2d", "name": "AsteriskNOW / FreePBX", "category": "guest", "description": "AsteriskNOW makes it easy to create custom telephony solutions by automatically installing the 'plumbing'. It's a complete Linux distribution with Asterisk, the DAHDI driver framework, and, the FreePBX administrative GUI. Much of the complexity of Asterisk and Linux is handled by the installer, the yum package management utility and the administrative GUI. With AsteriskNOW, application developers and integrators can concentrate on building solutions, not maintaining the plumbing.", diff --git a/gns3server/appliances/bigswitch-bigcloud-fabric.gns3a b/gns3server/appliances/bigswitch-bigcloud-fabric.gns3a index 8da0e867..96d907b4 100644 --- a/gns3server/appliances/bigswitch-bigcloud-fabric.gns3a +++ b/gns3server/appliances/bigswitch-bigcloud-fabric.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "8885febc-9067-4c2b-94e9-67090df0c21e", "name": "Big Cloud Fabric", "category": "router", "description": "Big Cloud Fabric\u2122 is the industry's first data center fabric built using whitebox or britebox switches and SDN controller technology. Embracing hyperscale data center design principles, Big Cloud Fabric solution enables rapid innovation, ease of provisioning and management, while reducing overall costs, making it ideal for current and next generation data centers. Big Cloud Fabric is designed from the ground up to satisfy the requirements of physical, virtual, containerized, or a combination of such workloads. Some of the typical OpenStack or VMware data center workloads include NFV, High Performance Computing, Big Data and Software Defined Storage deployments.", diff --git a/gns3server/appliances/bird.gns3a b/gns3server/appliances/bird.gns3a index c2a92202..688f072e 100644 --- a/gns3server/appliances/bird.gns3a +++ b/gns3server/appliances/bird.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "088df570-f637-46f5-8a68-85acde538e5e", "name": "BIRD", "category": "router", "description": "The BIRD project aims to develop a fully functional dynamic IP routing daemon primarily targeted on (but not limited to) Linux, FreeBSD and other UNIX-like systems and distributed under the GNU General Public License.", diff --git a/gns3server/appliances/brocade-vadx.gns3a b/gns3server/appliances/brocade-vadx.gns3a index 865c3959..dc8c85ae 100644 --- a/gns3server/appliances/brocade-vadx.gns3a +++ b/gns3server/appliances/brocade-vadx.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "5952eca3-fc06-4a57-a3b0-986237cb7de7", "name": "Brocade Virtual ADX", "category": "firewall", "description": "The Brocade Virtual ADX (vADX\u2122) is a full-fledged Application Delivery Controller (ADC) platform with a virtual footprint that leverages Intel advanced technology to deliver remarkable performance. The software is designed to run on standardsbased hypervisors, hosted on Intel x86 COTS hardware. It offers a complete suite of Layer 4 and Layer 7 server load balancing capabilities and application security services with extensible management via rich SOAP/XML APIs.", diff --git a/gns3server/appliances/brocade-vrouter.gns3a b/gns3server/appliances/brocade-vrouter.gns3a index f7fe1ce3..98c33d53 100644 --- a/gns3server/appliances/brocade-vrouter.gns3a +++ b/gns3server/appliances/brocade-vrouter.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "52a04aee-1046-4214-a364-18ecd776f7b3", "name": "vRouter", "category": "router", "description": "With proven ultra-high performance and scalability, the Brocade vRouter is the networking industry leader in software innovation. The Brocade vRouter has set a the benchmark for all software-based routers, while offering easy scalability, a broad set of capabilities, and the peace of mind that comes with rock solid reliability.", diff --git a/gns3server/appliances/brocade-vtm.gns3a b/gns3server/appliances/brocade-vtm.gns3a index f502b44d..08510a06 100644 --- a/gns3server/appliances/brocade-vtm.gns3a +++ b/gns3server/appliances/brocade-vtm.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "cabd6cb2-1c70-4f90-b225-6601fea89cfc", "name": "vTM DE", "category": "router", "description": "Take control of your online applications with Brocade virtual Traffic Manager (Developer Edition). Enhance customer experience, inspect traffic in real-time, control service levels to differentiate users and services, and reduce your costs with an extensible delivery platform that can grow with your business using ADC-as-a-Service. A fully functional Developer Edition which needs no license key, is limited to 1 Mbps/100 SSL tps throughput, and has access to the Brocade Community support web pages.", diff --git a/gns3server/appliances/bsdrp.gns3a b/gns3server/appliances/bsdrp.gns3a index f5735424..eadbaf67 100644 --- a/gns3server/appliances/bsdrp.gns3a +++ b/gns3server/appliances/bsdrp.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "f28432b3-c5fe-48fa-b9e8-4024aa7cbe9e", "name": "BSDRP", "category": "router", "description": "BSD Router Project (BSDRP) is an embedded free and open source router distribution based on FreeBSD with Quagga and Bird.", diff --git a/gns3server/appliances/centos-cloud.gns3a b/gns3server/appliances/centos-cloud.gns3a index daaf0d37..de73f614 100644 --- a/gns3server/appliances/centos-cloud.gns3a +++ b/gns3server/appliances/centos-cloud.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "f8186e9a-5145-4da0-ac18-b5b13cf57d3b", "name": "CentOS Cloud Guest", "category": "guest", "description": "CentOS official image for self-hosted cloud", diff --git a/gns3server/appliances/centos7.gns3a b/gns3server/appliances/centos7.gns3a index 1fbec7c8..44b6fdbf 100644 --- a/gns3server/appliances/centos7.gns3a +++ b/gns3server/appliances/centos7.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "b1e84913-1c9b-49f5-bf2e-45f2b42ba404", "name": "Centos", "category": "guest", "description": "The CentOS Linux distribution is a stable, predictable, manageable and reproducible platform derived from the sources of Red Hat Enterprise Linux (RHEL). We are now looking to expand on that by creating the resources needed by other communities to come together and be able to build on the CentOS Linux platform. And today we start the process by delivering a clear governance model, increased transparency and access. In the coming weeks we aim to publish our own roadmap that includes variants of the core CentOS Linux.", diff --git a/gns3server/appliances/checkpoint-gaia.gns3a b/gns3server/appliances/checkpoint-gaia.gns3a index fb90ea3a..bd4a4033 100644 --- a/gns3server/appliances/checkpoint-gaia.gns3a +++ b/gns3server/appliances/checkpoint-gaia.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "7bfa7a66-b1fa-4e5e-9b85-95d74440ee31", "name": "Checkpoint GAiA", "category": "firewall", "description": "Check Point Gaia is the next generation Secure Operating System for all Check Point Appliances, Open Servers and Virtualized Gateways.\n\nGaia combines the best features from IPSO and SecurePlatform (SPLAT) into a single unified OS providing greater efficiency and robust performance. By upgrading to Gaia, customers will benefit from improved appliance connection capacity and reduced operating costs. With Gaia, IP Appliance customers will gain the ability to leverage the full breadth and power of all Check Point Software Blades.\n\nGaia secures IPv6 networks utilizing the Check Point Acceleration & Clustering technology and it protects the most dynamic network and virtualized environments by supporting 5 different dynamic routing protocols. As a 64-Bit OS, Gaia increases the connection capacity of existing appliances supporting up-to 10M concurrent connections for select 2012 Models.\n\nGaia simplifies management with segregation of duties by enabling role-based administrative access. Furthermore, Gaia greatly increases operation efficiency by offering Automatic Software Update.\n\nThe feature-rich Web interface allows for search of any command or property in a second.\n\nGaia provides backward compatibility with IPSO and SPLAT CLI-style commands making it an easy transition for existing Check Point customers.", diff --git a/gns3server/appliances/chromium.gns3a b/gns3server/appliances/chromium.gns3a index 655b69db..e109c79a 100644 --- a/gns3server/appliances/chromium.gns3a +++ b/gns3server/appliances/chromium.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "c95b160b-4515-4cc9-81cc-92ac063dd250", "name": "Chromium", "category": "guest", "description": "The chromium browser", diff --git a/gns3server/appliances/cisco-1700.gns3a b/gns3server/appliances/cisco-1700.gns3a index 2d6a52fe..c136b7c4 100644 --- a/gns3server/appliances/cisco-1700.gns3a +++ b/gns3server/appliances/cisco-1700.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "cc2b1802-3520-4963-8ff7-c19b1f6418c5", "name": "Cisco 1700", "category": "router", "description": "Cisco 1700 Router", diff --git a/gns3server/appliances/cisco-2600.gns3a b/gns3server/appliances/cisco-2600.gns3a index 51bc2287..817e8584 100644 --- a/gns3server/appliances/cisco-2600.gns3a +++ b/gns3server/appliances/cisco-2600.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "ed474fea-cd3b-4e2e-be84-a855a133060a", "name": "Cisco 2600", "category": "router", "description": "Cisco 2600 Router", diff --git a/gns3server/appliances/cisco-2691.gns3a b/gns3server/appliances/cisco-2691.gns3a index e678c81e..cc6123bf 100644 --- a/gns3server/appliances/cisco-2691.gns3a +++ b/gns3server/appliances/cisco-2691.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "ed0f079e-a506-4cb4-b46c-714a80bbe2d3", "name": "Cisco 2691", "category": "router", "description": "Cisco 2691 Router", diff --git a/gns3server/appliances/cisco-3620.gns3a b/gns3server/appliances/cisco-3620.gns3a index 4294c98a..97477e61 100644 --- a/gns3server/appliances/cisco-3620.gns3a +++ b/gns3server/appliances/cisco-3620.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "7ada6336-7280-4306-9f32-6b1e242ae989", "name": "Cisco 3620", "category": "router", "description": "Cisco 3620 Router", diff --git a/gns3server/appliances/cisco-3640.gns3a b/gns3server/appliances/cisco-3640.gns3a index b767d909..71b3f90b 100644 --- a/gns3server/appliances/cisco-3640.gns3a +++ b/gns3server/appliances/cisco-3640.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "ef119e49-19fe-4239-9c6b-16ea12f6ec01", "name": "Cisco 3640", "category": "router", "description": "Cisco 3640 Router", diff --git a/gns3server/appliances/cisco-3660.gns3a b/gns3server/appliances/cisco-3660.gns3a index 5a636df4..57f2c551 100644 --- a/gns3server/appliances/cisco-3660.gns3a +++ b/gns3server/appliances/cisco-3660.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "ac460a9c-9274-4ccf-a056-af50b699925f", "name": "Cisco 3660", "category": "router", "description": "Cisco 3660 Router", diff --git a/gns3server/appliances/cisco-3725.gns3a b/gns3server/appliances/cisco-3725.gns3a index 93c85330..2e258082 100644 --- a/gns3server/appliances/cisco-3725.gns3a +++ b/gns3server/appliances/cisco-3725.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "5b9c5293-a5a7-47a3-9df4-6cf658f2f378", "name": "Cisco 3725", "category": "router", "description": "Cisco 3725 Router", diff --git a/gns3server/appliances/cisco-3745.gns3a b/gns3server/appliances/cisco-3745.gns3a index 9a683493..f48765a0 100644 --- a/gns3server/appliances/cisco-3745.gns3a +++ b/gns3server/appliances/cisco-3745.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "18737edb-e43f-4fb0-8a0f-88982cff58b1", "name": "Cisco 3745", "category": "router", "description": "Cisco 3745 Multiservice Access Router", diff --git a/gns3server/appliances/cisco-7200.gns3a b/gns3server/appliances/cisco-7200.gns3a index d3db50e1..59371e21 100644 --- a/gns3server/appliances/cisco-7200.gns3a +++ b/gns3server/appliances/cisco-7200.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "38aa3135-f169-4131-9b64-73605787b5ef", "name": "Cisco 7200", "category": "router", "description": "Cisco 7200 Router", diff --git a/gns3server/appliances/cisco-asa.gns3a b/gns3server/appliances/cisco-asa.gns3a index 69afb053..1227a674 100644 --- a/gns3server/appliances/cisco-asa.gns3a +++ b/gns3server/appliances/cisco-asa.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "fdbfc23e-413f-4b9f-b930-6cd27527d72b", "name": "Cisco ASA", "category": "firewall", "description": "Cisco ASA firewall", diff --git a/gns3server/appliances/cisco-asav.gns3a b/gns3server/appliances/cisco-asav.gns3a index ca8e47b9..ccc0e57e 100644 --- a/gns3server/appliances/cisco-asav.gns3a +++ b/gns3server/appliances/cisco-asav.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "886c4059-4a10-4c62-ab59-7f02beeac292", "name": "Cisco ASAv", "category": "firewall", "description": "The Adaptive Security Virtual Appliance is a virtualized network security solution based on the market-leading Cisco ASA 5500-X Series firewalls. It supports both traditional and next-generation software-defined network (SDN) and Cisco Application Centric Infrastructure (ACI) environments to provide policy enforcement and threat inspection across heterogeneous multisite environments.", diff --git a/gns3server/appliances/cisco-c8000v.gns3a b/gns3server/appliances/cisco-c8000v.gns3a index d10c4a58..6c1828da 100644 --- a/gns3server/appliances/cisco-c8000v.gns3a +++ b/gns3server/appliances/cisco-c8000v.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "d223e573-8de5-4f93-b26d-d5d1f2f18226", "name": "Cisco Catalyst 8000V", "category": "router", "description": "The Cisco Catalyst 8000V Edge Software is a virtual, form-factor router deployed on a virtual machine (VM) running on an x86 server hardware.", diff --git a/gns3server/appliances/cisco-csr1000v.gns3a b/gns3server/appliances/cisco-csr1000v.gns3a index 07df2292..0d062d3c 100644 --- a/gns3server/appliances/cisco-csr1000v.gns3a +++ b/gns3server/appliances/cisco-csr1000v.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "95d17663-f40a-437f-b5f1-dab4779965de", "name": "Cisco CSR1000v", "category": "router", "description": "The Cisco Cloud Services Router 1000V (CSR 1000V) is a router and network services platform in virtual form factor that is intended for deployment in cloud and virtual data centers. It is optimized to serve as a single-tenant or multitenant WAN gateway. Using proven, industry-leading Cisco IOS\u00ae XE Software networking and security features, the CSR 1000V enables enterprises to transparently extend their WANs into external provider-hosted clouds and cloud providers to offer their tenants enterprise-class networking services.", diff --git a/gns3server/appliances/cisco-dcnm.gns3a b/gns3server/appliances/cisco-dcnm.gns3a index 3fba6a32..4942faa7 100644 --- a/gns3server/appliances/cisco-dcnm.gns3a +++ b/gns3server/appliances/cisco-dcnm.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "ae09653b-c8eb-4ecd-9341-2d0319e16b9b", "name": "Cisco DCNM", "category": "guest", "description": "Cisco Data Center Network Manager (DCNM) 10 unifies and automates Cisco Nexus and Cisco MDS 9000 Family multitenant infrastructure for data center management across Cisco Nexus 5000, 6000, 7000, and 9000 Series Switches in NX-OS mode using Cisco NX-OS Software as well as across Cisco MDS 9100 and 9300 Series Multilayer Fabric Switches, 9200 Series Multiservice Switches, and 9500 and 9700 Series Multilayer Directors. Data Center Network Manager 10 lets you manage very large numbers of devices while providing ready-to-use management and automation capabilities plus Virtual Extensible LAN (VXLAN) overlay visibility into Cisco Nexus LAN fabrics.", diff --git a/gns3server/appliances/cisco-fcnf.gns3a b/gns3server/appliances/cisco-fcnf.gns3a index 83e5ae0b..269f0d28 100644 --- a/gns3server/appliances/cisco-fcnf.gns3a +++ b/gns3server/appliances/cisco-fcnf.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "e36183b5-5960-4bcf-bdb9-ca258c28b3e5", "name": "Cisco Flow Collector for NetFlow", "category": "firewall", "description": "Cisco Stealthwatch is the most comprehensive visibility and network traffic security analytics solution that uses enterprise telemetry from the existing network infrastructure. It provides advanced threat detection, accelerated threat response, and simplified network segmentation using multilayer machine learning and entity modeling. With advanced behavioral analytics, you'll always know who is on your network and what they are doing.\n\nAt the heart of the Stealthwatch System is the highly scalable Stealthwatch Flow Collector. The Flow Collector is available as either a physical or a virtual appliance. The Flow Collector VE performs the same functions as its physical counterpart, but in a virtual environment. The Stealthwatch Flow Collector for NetFlow gathers NetFlow, cFlow, J-Flow, Packeteer 2, NetStream, and IPFIX data. To achieve full network visibility with a traditional probe-based approach, you would need to install a probe for each router or switch on your network. This results in many costly hardware installations. Conversely, Stealthwatch's flow-based approach provides you with full network visibility at a fraction of the cost. Each Flow Collector can process data for as many as 1,000,000 hosts from up to 2,000 flow exporters, depending on the Flow Collector model and license restrictions. ", diff --git a/gns3server/appliances/cisco-fmcv.gns3a b/gns3server/appliances/cisco-fmcv.gns3a index 87a86c96..1fe7269d 100644 --- a/gns3server/appliances/cisco-fmcv.gns3a +++ b/gns3server/appliances/cisco-fmcv.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "1e409568-f8d6-4f94-8804-53039eb7784a", "name": "Cisco FMCv", "category": "firewall", "description": "This is your administrative nerve center for managing critical Cisco network security solutions. It provides complete and unified management over firewalls, application control, intrusion prevention, URL filtering, and advanced malware protection. Easily go from managing a firewall to controlling applications to investigating and remediating malware outbreaks.", diff --git a/gns3server/appliances/cisco-fsve.gns3a b/gns3server/appliances/cisco-fsve.gns3a index d5ce9c91..9f9871d5 100644 --- a/gns3server/appliances/cisco-fsve.gns3a +++ b/gns3server/appliances/cisco-fsve.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "709c2a9b-5dc3-4362-b147-fb848a0df963", "name": "Cisco Flow Sensor", "category": "firewall", "description": "Cisco Stealthwatch is the most comprehensive visibility and network traffic security analytics solution that uses enterprise telemetry from the existing network infrastructure. It provides advanced threat detection, accelerated threat response, and simplified network segmentation using multilayer machine learning and entity modeling. With advanced behavioral analytics, you'll always know who is on your network and what they are doing.\n\nUsing the same technology as the Stealthwatch Flow Sensor appliance, the Flow Sensor VE is a virtual appliance that provides visibility into virtual environments, generating flow data for areas that are not flow-enabled. ", diff --git a/gns3server/appliances/cisco-ftdv.gns3a b/gns3server/appliances/cisco-ftdv.gns3a index 41e65f34..4c7f7390 100644 --- a/gns3server/appliances/cisco-ftdv.gns3a +++ b/gns3server/appliances/cisco-ftdv.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "adce6f0c-10ae-4f4d-9e00-da833f419eae", "name": "Cisco FTDv", "category": "firewall", "description": "Cisco Firepower Threat Defense Virtual NGFW appliances combine Cisco's proven network firewall with the industry's most effective next-gen IPS and advanced malware protection. All so you can get more visibility, be more flexible, save more, and protect better.", diff --git a/gns3server/appliances/cisco-iosv.gns3a b/gns3server/appliances/cisco-iosv.gns3a index 89832630..c6d6bce6 100644 --- a/gns3server/appliances/cisco-iosv.gns3a +++ b/gns3server/appliances/cisco-iosv.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "3bf492b6-5717-4257-9bfd-b34617c6f133", "name": "Cisco IOSv", "category": "router", "description": "Cisco Virtual IOS allows user to run IOS on a standard computer.", diff --git a/gns3server/appliances/cisco-iosvl2.gns3a b/gns3server/appliances/cisco-iosvl2.gns3a index 02a7af5b..821ca78d 100644 --- a/gns3server/appliances/cisco-iosvl2.gns3a +++ b/gns3server/appliances/cisco-iosvl2.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "4368f802-ddec-4863-adbd-a36a6d83cd4c", "name": "Cisco IOSvL2", "category": "multilayer_switch", "description": "Cisco Virtual IOS L2 allows user to run a IOS switching image on a standard computer.", diff --git a/gns3server/appliances/cisco-iosxrv.gns3a b/gns3server/appliances/cisco-iosxrv.gns3a index 72276e58..53fd8ad9 100644 --- a/gns3server/appliances/cisco-iosxrv.gns3a +++ b/gns3server/appliances/cisco-iosxrv.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "78fc5177-c399-4369-a6f8-e9c9b217c2e2", "name": "Cisco IOS XRv", "category": "router", "description": "IOS XRv supports the control plane features introduced in Cisco IOS XR.", diff --git a/gns3server/appliances/cisco-iosxrv9k.gns3a b/gns3server/appliances/cisco-iosxrv9k.gns3a index e1084abe..c1a8930a 100644 --- a/gns3server/appliances/cisco-iosxrv9k.gns3a +++ b/gns3server/appliances/cisco-iosxrv9k.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "ea678b10-fc52-4079-83de-36769fbd9bc3", "name": "Cisco IOS XRv 9000", "category": "router", "description": "IOS XRv 9000 (aka Sunstone) is the 1st VM released running the 64-bit IOS XR operating system as used on the NCS-6xxx platform. This appliance requires 4 vCPUs and 16GB of memory to run!", diff --git a/gns3server/appliances/cisco-iou-l2.gns3a b/gns3server/appliances/cisco-iou-l2.gns3a index 85410e4e..2f6ace04 100644 --- a/gns3server/appliances/cisco-iou-l2.gns3a +++ b/gns3server/appliances/cisco-iou-l2.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "9593db48-558a-4914-bb78-a20605f39c65", "name": "Cisco IOU L2", "category": "multilayer_switch", "description": "Cisco IOS on UNIX Layer 2 image.", diff --git a/gns3server/appliances/cisco-iou-l3.gns3a b/gns3server/appliances/cisco-iou-l3.gns3a index c31ac267..19a5380b 100644 --- a/gns3server/appliances/cisco-iou-l3.gns3a +++ b/gns3server/appliances/cisco-iou-l3.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "87bf6f58-1e5a-4ee2-afe7-715dabffcf18", "name": "Cisco IOU L3", "category": "router", "description": "Cisco IOS on UNIX Layer 3 image.", diff --git a/gns3server/appliances/cisco-ise.gns3a b/gns3server/appliances/cisco-ise.gns3a index 54e370b0..167ff8fa 100644 --- a/gns3server/appliances/cisco-ise.gns3a +++ b/gns3server/appliances/cisco-ise.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "cf5d1f22-953a-434d-a07e-6e17de85acf1", "name": "Cisco ISE", "category": "firewall", "description": "The Cisco ISE platform is a comprehensive, next-generation, contextually-based access control solution. Cisco ISE offers authenticated network access, profiling, posture, guest management, and security group access services along with monitoring, reporting, and troubleshooting capabilities on a single physical or virtual appliance.", diff --git a/gns3server/appliances/cisco-ngipsv.gns3a b/gns3server/appliances/cisco-ngipsv.gns3a index 1c9b7c8a..a57a7a5d 100644 --- a/gns3server/appliances/cisco-ngipsv.gns3a +++ b/gns3server/appliances/cisco-ngipsv.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "587dd8e4-0c73-465d-bfdc-5cd7ab67029b", "name": "Cisco NGIPSv", "category": "firewall", "description": "Cisco Firepower Next-Generation IPS (NGIPS) threat appliances combine superior visibility, embedded security intelligence, automated analysis, and industry-leading threat effectiveness.", diff --git a/gns3server/appliances/cisco-nxosv.gns3a b/gns3server/appliances/cisco-nxosv.gns3a index 16070008..b49a026d 100644 --- a/gns3server/appliances/cisco-nxosv.gns3a +++ b/gns3server/appliances/cisco-nxosv.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "6260ec1e-8ab0-40c6-9e35-fbcc88ce935e", "name": "Cisco NX-OSv", "category": "multilayer_switch", "description": "NXOSv is a reference platform for an implementation of the Cisco Nexus operating system, based on the Nexus 7000-series platforms, running as a full virtual machine on a hypervisor. This includes NXAPI and MPLS LDP support.", diff --git a/gns3server/appliances/cisco-nxosv9k.gns3a b/gns3server/appliances/cisco-nxosv9k.gns3a index ae3c6e84..2c1862b8 100644 --- a/gns3server/appliances/cisco-nxosv9k.gns3a +++ b/gns3server/appliances/cisco-nxosv9k.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "f739d949-136b-4a56-8b0f-d39832e5aa30", "name": "Cisco NX-OSv 9000", "category": "multilayer_switch", "description": "The NX-OSv 9000 is a virtual platform that is designed to simulate the control plane aspects of a network element running Cisco Nexus 9000 software. The NX-OSv 9000 shares the same software image running on Cisco Nexus 9000 hardware platform although no specific hardware emulation is implemented. When the software runs as a virtual machine, line card (LC) ASIC provisioning or any interaction from the control plane to hardware ASIC is handled by the NX-OSv 9000 software data plane.\nThe NX-OSv 9000 for the Cisco Nexus 9000 Series provides a useful tool to enable the devops model and rapidly test changes to the infrastructure or to infrastructure automation tools. This enables network simulations in large scale for customers to validate configuration changes on a simulated network prior to applying them on a production network. Some users have also expressed interest in using the simulation system for feature test ,verification, and automation tooling development and test simualtion prior to deployment. NX-OSv 9000 can be used as a programmability vehicle to validate software defined networks (SDNs) and Network Function Virtualization (NFV) based solutions.", @@ -81,6 +82,13 @@ "filesize": 1330315264, "download_url": "https://software.cisco.com/download/home/286312239/type/282088129/release/9.2%25281%2529" }, + { + "filename": "nxosv-final.7.0.3.I7.9.qcow2", + "version": "7.0.3.I7.9", + "md5sum": "50678c719f6b822c43dd096dbdf359e8", + "filesize": 1003618304, + "download_url": "https://software.cisco.com/download/home/286312239/type/282088129/release/7.0(3)I7(9)?i=!pp" + }, { "filename": "nxosv-final.7.0.3.I7.7.qcow2", "version": "7.0.3.I7.7", @@ -218,6 +226,13 @@ "hda_disk_image": "nxosv-final.9.2.1.qcow2" } }, + { + "name": "7.0.3.I7.9", + "images": { + "bios_image": "OVMF-20160813.fd", + "hda_disk_image": "nxosv-final.7.0.3.I7.9.qcow2" + } + }, { "name": "7.0.3.I7.7", "images": { diff --git a/gns3server/appliances/cisco-smc.gns3a b/gns3server/appliances/cisco-smc.gns3a index 6ae32228..2480bb5b 100644 --- a/gns3server/appliances/cisco-smc.gns3a +++ b/gns3server/appliances/cisco-smc.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "903bbc99-6c4a-4bc7-b9b1-eb5f2e3c5470", "name": "Cisco Stealthwatch Management Console", "category": "firewall", "description": "Cisco Stealthwatch is the most comprehensive visibility and network traffic security analytics solution that uses enterprise telemetry from the existing network infrastructure. It provides advanced threat detection, accelerated threat response, and simplified network segmentation using multilayer machine learning and entity modeling. With advanced behavioral analytics, you'll always know who is on your network and what they are doing.\n\nAs the control center for the Stealthwatch System, the SMC manages, coordinates, configures, and organizes all of the different components of the system. The SMC client software allows you to access the SMC's user-friendly graphical user interface from any local computer with access to a Web browser. Through the client interface, you can easily access real-time security and network information about critical segments throughout your enterprise. ", diff --git a/gns3server/appliances/cisco-vWLC.gns3a b/gns3server/appliances/cisco-vWLC.gns3a index 607d1a54..d99504b1 100644 --- a/gns3server/appliances/cisco-vWLC.gns3a +++ b/gns3server/appliances/cisco-vWLC.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "e632ff43-fc14-41f8-a293-b6a62f0e1788", "name": "Cisco vWLC", "category": "guest", "description": "The Virtual Wireless Controller can cost-effectively manage, secure, and optimize the performance of local and branch wireless networks. Ideal for small and medium-sized businesses, the Virtual Wireless Controller facilitates server consolidation and improves business continuity in the face of outages.", diff --git a/gns3server/appliances/cisco-wsav.gns3a b/gns3server/appliances/cisco-wsav.gns3a index 241b3227..85b08b31 100644 --- a/gns3server/appliances/cisco-wsav.gns3a +++ b/gns3server/appliances/cisco-wsav.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "a9dc537f-3093-42c2-95d9-fca800e59f82", "name": "Web Security Virtual Appliance", "category": "firewall", "description": "The Cisco WSA was one of the first secure web gateways to combine leading protections to help organizations address the growing challenges of securing and controlling web traffic. It enables simpler, faster deployment with fewer maintenance requirements, reduced latency, and lower operating costs. \"Set and forget\" technology frees staff after initial automated policy settings go live, and automatic security updates are pushed to network devices every 3 to 5 minutes. Flexible deployment options and integration with your existing security infrastructure help you meet quickly evolving security requirements.", diff --git a/gns3server/appliances/citrix-netscaler-vpx.gns3a b/gns3server/appliances/citrix-netscaler-vpx.gns3a index c34ea352..bd1402c3 100644 --- a/gns3server/appliances/citrix-netscaler-vpx.gns3a +++ b/gns3server/appliances/citrix-netscaler-vpx.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "a013860f-c65d-477d-abfc-d3d98b49e7d6", "name": "NetScaler VPX", "category": "router", "description": "Today's enterprises face more demands than ever, from cloud computing to 24/7 availability to increasing security threats. NetScaler ADC, an advanced software-defined application delivery controller, is your networking power player. It provides outstanding delivery of business applications-to any device and any location-with unmatched security, superior L4-7 load balancing, reliable GSLB, and 100 percent uptime. In fact, NetScaler ADC offers up to five times the performance of our closest competitor. Plus our TriScale technology saves you money by allowing your network to scale up or down without additional hardware costs.", diff --git a/gns3server/appliances/clearos.gns3a b/gns3server/appliances/clearos.gns3a index 4c5bd27c..8ec83838 100644 --- a/gns3server/appliances/clearos.gns3a +++ b/gns3server/appliances/clearos.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "c731e7d0-5893-4072-a681-998df576a67c", "name": "ClearOS CE", "category": "firewall", "description": "ClearOS is an operating system for your Server, Network, and Gateway systems. It is designed for homes, small to medium businesses, and distributed environments. ClearOS is commonly known as the Next Generation Small Business Server, while including indispensable Gateway and Networking functionality. It delivers a powerful IT solution with an elegant user interface that is completely web-based. Simply put.. ClearOS is the new way of delivering IT.", diff --git a/gns3server/appliances/cloudrouter.gns3a b/gns3server/appliances/cloudrouter.gns3a index ce72e671..b6d6b9f5 100644 --- a/gns3server/appliances/cloudrouter.gns3a +++ b/gns3server/appliances/cloudrouter.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "e5563056-f6dc-4b51-bcff-8b566ae8b0a7", "name": "CloudRouter", "category": "router", "description": "The CloudRouter Project is a collaborative open source project focused on developing a powerful, easy to use router designed for the cloud.\nCompute resources are rapidly migrating from physical infrastructure to a combination of physical, virtual and cloud environments. A similar transition is emerging in the networking space, with network control logic shifting from proprietary hardware-based platforms to open source software-based platforms. CloudRouter is a software-based router distribution designed to run on physical, virtual and cloud environments, supporting software-defined networking infrastructure. It includes the features of traditional hardware routers, as well as support for emerging technologies such as containers and software-defined interconnection. CloudRouter aims to facilitate migration to the cloud without giving up control over network routing and governance.", diff --git a/gns3server/appliances/coreos.gns3a b/gns3server/appliances/coreos.gns3a index 32ac0c73..babf9f1b 100644 --- a/gns3server/appliances/coreos.gns3a +++ b/gns3server/appliances/coreos.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "5a03e6b9-afe3-44f5-ae35-5664c0250b94", "name": "CoreOS", "category": "guest", "description": "CoreOS is designed for security, consistency, and reliability. Instead of installing packages via yum or apt, CoreOS uses Linux containers to manage your services at a higher level of abstraction. A single service's code and all dependencies are packaged within a container that can be run on one or many CoreOS machines.", diff --git a/gns3server/appliances/cumulus-vx.gns3a b/gns3server/appliances/cumulus-vx.gns3a index 884ac4e5..03685393 100644 --- a/gns3server/appliances/cumulus-vx.gns3a +++ b/gns3server/appliances/cumulus-vx.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "f1b83421-6c20-4fa7-8292-568fe08874c4", "name": "Cumulus VX", "category": "multilayer_switch", "description": "Cumulus VX is a community-supported virtual appliance that enables cloud admins and network engineers to preview and test Cumulus Networks technology at zero cost. You can build sandbox environments to learn Open Networking concepts, prototype network operations and script & develop applications risk-free. With Cumulus VX, you can get started with Open Networking at your pace, on your time, and in your environment!", diff --git a/gns3server/appliances/danos.gns3a b/gns3server/appliances/danos.gns3a index bb9ed3d3..f0cd7f36 100644 --- a/gns3server/appliances/danos.gns3a +++ b/gns3server/appliances/danos.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "ccbd2d81-c588-4bbb-80ac-ba20686b613a", "name": "DANOS", "category": "router", "description": "The Disaggregated Network Operating System (DANOS) project enables community collaboration across network hardware, forwarding, and operating system layers. DANOS is initially based on AT&T's \"dNOS\" software framework of a more open, cost-effective and flexible alternative to traditional networking equipment. As part of The Linux Foundation, it now incorporates contributions from complementary open source communities in building a standardized distributed Network Operating System (NOS) to speed the adoption and use of white boxes in a service provider's infrastructure.", diff --git a/gns3server/appliances/debian10-min.gns3a b/gns3server/appliances/debian10-min.gns3a index fbe787b0..bf38dfb7 100644 --- a/gns3server/appliances/debian10-min.gns3a +++ b/gns3server/appliances/debian10-min.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "8f8df56b-605d-447c-94a4-4848e3ae8392", "name": "Debian 10 Minimal", "category": "guest", "description": "Debian 10 Custom, with automatic disk resize and ssh/nmap", diff --git a/gns3server/appliances/deft-linux.gns3a b/gns3server/appliances/deft-linux.gns3a index 5c9d25b4..0c39a22c 100644 --- a/gns3server/appliances/deft-linux.gns3a +++ b/gns3server/appliances/deft-linux.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "518a5802-266a-4299-b84b-e6cccb5a39ac", "name": "DEFT Linux", "category": "guest", "description": "DEFT (acronym for Digital Evidence & Forensics Toolkit) is a distribution made for Computer Forensics, with the purpose of running live on systems without tampering or corrupting devices (hard disks, pendrives, etc...) connected to the PC where the boot process takes place.\nThe DEFT system is based on GNU Linux, it can run live (via DVDROM or USB pendrive), installed or run as a Virtual Appliance on VMware or Virtualbox. DEFT employs LXDE as desktop environment and WINE for executing Windows tools under Linux. It features a comfortable mount manager for device management.\nDEFT is paired with DART (acronym for Digital Advanced Response Toolkit), a Forensics System which can be run on Windows and contains the best tools for Forensics and Incident Response. DART features a GUI with logging and integrity check for the instruments here contained.\nBesides all this, the DEFT staff is devoted to implementing and developing applications which are released to Law Enforcement Officers, such as Autopsy 3 for Linux.", diff --git a/gns3server/appliances/dell-ftos.gns3a b/gns3server/appliances/dell-ftos.gns3a index aa36baad..79314dcf 100644 --- a/gns3server/appliances/dell-ftos.gns3a +++ b/gns3server/appliances/dell-ftos.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "85441847-4091-4894-9079-802084a1845b", "name": "Dell OS9", "category": "router", "description": "Dell Networking OS9 (formerly FTOS).\nOS9 powers the Dell Networking product portfolio and has been hardened in some of the largest and most demanding environments in the world to meet stringent reliability, scalability and serviceability requirements. \n\nDownload and uncompress zip files from the Dell support site - corresponding to the FTOS/OS9 image name. Please 'Select FTOS for S-Series OS-EMULATOR'. Import the resulting ISO image.", diff --git a/gns3server/appliances/dns.gns3a b/gns3server/appliances/dns.gns3a index c0f10568..e41026f3 100644 --- a/gns3server/appliances/dns.gns3a +++ b/gns3server/appliances/dns.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "f049539d-db46-422f-8d10-ff9b96a2a4ae", "name": "DNS", "category": "guest", "description": "This appliance provides DNS using dnsmasq with the local domain set to \"lab\".", diff --git a/gns3server/appliances/empty-vm.gns3a b/gns3server/appliances/empty-vm.gns3a new file mode 100644 index 00000000..83724603 --- /dev/null +++ b/gns3server/appliances/empty-vm.gns3a @@ -0,0 +1,73 @@ +{ + "appliance_id": "1cfdf900-7c30-4cb7-8f03-3f61d2581633", + "name": "Empty VM", + "category": "guest", + "description": "An empty VM with empty hard disks 8G, 30G & 100G.", + "vendor_name": "GNS3", + "vendor_url": "https://gns3.com", + "documentation_url": "", + "product_name": "QEMU", + "product_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", + "registry_version": 4, + "status": "experimental", + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "usage": "Default at first boot the VM will start from the cdrom.", + "port_name_format": "eth{0}", + "qemu": { + "adapter_type": "e1000", + "adapters": 1, + "ram": 1024, + "arch": "x86_64", + "console_type": "vnc", + "hda_disk_interface": "sata", + "boot_priority": "d", + "kvm": "allow" + }, + "images": [ + { + "filename": "empty8G.qcow2", + "version": "8G", + "md5sum": "f1d2c25b6990f99bd05b433ab603bdb4", + "filesize": 197120, + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", + "direct_download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty8G.qcow2/download" + }, + { + "filename": "empty30G.qcow2", + "version": "30G", + "md5sum": "3411a599e822f2ac6be560a26405821a", + "filesize": 197120, + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", + "direct_download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download" + }, + { + "filename": "empty100G.qcow2", + "version": "100G", + "md5sum": "1e6409a4523ada212dea2ebc50e50a65", + "filesize": 198656, + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", + "direct_download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty100G.qcow2/download" + } + ], + "versions": [ + { + "name": "8G", + "images": { + "hda_disk_image": "empty8G.qcow2" + } + }, + { + "name": "30G", + "images": { + "hda_disk_image": "empty30G.qcow2" + } + }, + { + "name": "100G", + "images": { + "hda_disk_image": "empty100G.qcow2" + } + } + ] +} diff --git a/gns3server/appliances/exos.gns3a b/gns3server/appliances/exos.gns3a index 5e51b1a3..14416153 100644 --- a/gns3server/appliances/exos.gns3a +++ b/gns3server/appliances/exos.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "0293ded2-0ca3-4052-913f-8c2d872e46ba", "name": "EXOS VM", "category": "multilayer_switch", "description": "The ExtremeXOS VM is created and maintained by Extreme Networks for users to emulate a network using EXOS switches.", diff --git a/gns3server/appliances/extreme-networks-voss.gns3a b/gns3server/appliances/extreme-networks-voss.gns3a index 54d99ca9..1435bcd6 100644 --- a/gns3server/appliances/extreme-networks-voss.gns3a +++ b/gns3server/appliances/extreme-networks-voss.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "3e81eb47-43c4-4676-bbc5-8dda1d7abe08", "name": "VOSS VM", "category": "multilayer_switch", "description": "The VOSS VM is a software emulation of a VSP8K switch.", diff --git a/gns3server/appliances/f5-bigip.gns3a b/gns3server/appliances/f5-bigip.gns3a index 9d0d902a..6d2061f4 100644 --- a/gns3server/appliances/f5-bigip.gns3a +++ b/gns3server/appliances/f5-bigip.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "4aa73054-4d54-4829-9c00-b16ad50e7a7e", "name": "F5 BIG-IP LTM VE", "category": "router", "description": "The BIG-IP family of products offers the application intelligence that network managers need to ensure applications are fast, secure, and available. All BIG-IP products share a common underlying architecture, F5's Traffic Management Operating System (TMOS), which provides unified intelligence, flexibility, and programmability. Together, BIG-IP's powerful platforms, advanced modules, and centralized management system make up the most comprehensive set of application delivery tools in the industry. BIG-IP Virtual Edition (VE) is a version of the BIG-IP system that runs as a virtual machine in specifically-supported hypervisors. BIG-IP VE emulates a hardware-based BIG-IP system running a VE-compatible version of BIG-IP software.", diff --git a/gns3server/appliances/f5-bigiq.gns3a b/gns3server/appliances/f5-bigiq.gns3a index 7aa07ffd..26517845 100644 --- a/gns3server/appliances/f5-bigiq.gns3a +++ b/gns3server/appliances/f5-bigiq.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "799f2414-7341-4f55-8b6d-2b3f6d11b1d8", "name": "F5 BIG-IQ CM", "category": "guest", "description": "When you go from managing a few boxes to managing a few dozen, your processes, logistics, and needs all change. BIG-IQ Centralized Management brings all of your devices together, so you can discover, track, upgrade, and deploy more efficiently. You can also monitor key metrics from one location, saving yourself both time and effort.\n\nCentrally manage up to 200 physical, virtual, or virtual clustered multiprocessing (vCMP) based BIG-IP devices. BIG-IQ Centralized Management also handles licensing for up to 5,000 unmanaged devices, so you can spin BIG-IP virtual editions (VEs) up or down as needed.", diff --git a/gns3server/appliances/firefox.gns3a b/gns3server/appliances/firefox.gns3a index 633bd74e..14fe1ba4 100644 --- a/gns3server/appliances/firefox.gns3a +++ b/gns3server/appliances/firefox.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "b2027465-2959-4ef3-ba56-7b2880e4e711", "name": "Firefox", "category": "guest", "description": "A light Linux based on TinyCore Linux with Firefox preinstalled", diff --git a/gns3server/appliances/fortiadc-manager.gns3a b/gns3server/appliances/fortiadc-manager.gns3a index e14f551c..d1df156f 100644 --- a/gns3server/appliances/fortiadc-manager.gns3a +++ b/gns3server/appliances/fortiadc-manager.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "a1903402-919b-4620-9b07-37902f46a4e3", "name": "FortiADC Manager", "category": "guest", "description": "FortiADC Manager allows you to use a web- based user interface to configure remote FortiADC devices. It allows you to simplify and speed up the FortiADC deployment and update process by maintaining configuration templates and policy packages that you can modify and apply as needed.", diff --git a/gns3server/appliances/fortiadc.gns3a b/gns3server/appliances/fortiadc.gns3a index f8e86456..dce76870 100644 --- a/gns3server/appliances/fortiadc.gns3a +++ b/gns3server/appliances/fortiadc.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "74e0ff73-7ceb-4871-81f0-b4dd4b35911a", "name": "FortiADC", "category": "router", "description": "Fortinet ADC appliances optimize the availability, user experience, and scalability of enterprise application delivery. They deliver fast, secure, and intelligent acceleration and distribution of even the most demanding enterprise applications.", diff --git a/gns3server/appliances/fortianalyzer.gns3a b/gns3server/appliances/fortianalyzer.gns3a index b16940a2..3e73ea7a 100644 --- a/gns3server/appliances/fortianalyzer.gns3a +++ b/gns3server/appliances/fortianalyzer.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "4fc11cfb-d600-4dd4-af94-e4b16191be2a", "name": "FortiAnalyzer", "category": "guest", "description": "FortiAnalyzer Network Security Logging, Analysis, and Reporting Appliances securely aggregate log data from Fortinet Security Appliances. A comprehensive suite of easily customable reports allows you to quickly analyze and visualize network threats, inefficiencies and usage.", diff --git a/gns3server/appliances/fortiauthenticator.gns3a b/gns3server/appliances/fortiauthenticator.gns3a index 6d6799c8..f766ad96 100644 --- a/gns3server/appliances/fortiauthenticator.gns3a +++ b/gns3server/appliances/fortiauthenticator.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "57e289b6-68a4-4911-a916-0d3def89ef74", "name": "FortiAuthenticator", "category": "guest", "description": "FortiAuthenticator user identity management appliances strengthen enterprise security by simplifying and centralizing the management and storage of user identity information.", diff --git a/gns3server/appliances/forticache.gns3a b/gns3server/appliances/forticache.gns3a index e27362b0..b2a6d037 100644 --- a/gns3server/appliances/forticache.gns3a +++ b/gns3server/appliances/forticache.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "75df92b4-69d3-4d5d-91b1-c36efa68d9fd", "name": "FortiCache", "category": "guest", "description": "FortiCache VM high performance Web Caching virtual appliances address bandwidth saturation, high latency, and poor performance caused by caching popular internet content locally for carriers, service providers, enterprises and educational networks. FortiCache VM appliances reduce the cost and impact of cached content on the network, while increasing performance and end- user satisfaction by improving the speed of delivery of popular repeated content.", diff --git a/gns3server/appliances/fortigate.gns3a b/gns3server/appliances/fortigate.gns3a index 4e933a54..fb830442 100644 --- a/gns3server/appliances/fortigate.gns3a +++ b/gns3server/appliances/fortigate.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "2b3da0fb-abe3-4131-92b6-4e7fcb50dba5", "name": "FortiGate", "category": "firewall", "description": "FortiGate Virtual Appliance offers the same level of advanced threat prevention features like the physical appliances in private, hybrid and public cloud deployment.", diff --git a/gns3server/appliances/fortimail.gns3a b/gns3server/appliances/fortimail.gns3a index abb9eed4..77bc0c35 100644 --- a/gns3server/appliances/fortimail.gns3a +++ b/gns3server/appliances/fortimail.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "4089ee66-e13b-4490-aa51-53cdb969e024", "name": "FortiMail", "category": "guest", "description": "FortiMail is a complete Secure Email Gateway offering suitable for any size organization. It provides a single solution to protect against inbound attacks - including advanced malware -, as well as outbound threats and data loss with a wide range of top-rated security capabilities.", diff --git a/gns3server/appliances/fortimanager.gns3a b/gns3server/appliances/fortimanager.gns3a index 8f75a84e..ce77ab7f 100644 --- a/gns3server/appliances/fortimanager.gns3a +++ b/gns3server/appliances/fortimanager.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "b9ce377f-6a6c-497a-a12d-444936a575c3", "name": "FortiManager", "category": "guest", "description": "FortiManager Security Management appliances allow you to centrally manage any number of Fortinet Network Security devices, from several to thousands, including FortiGate, FortiWiFi, and FortiCarrier.", diff --git a/gns3server/appliances/fortiproxy.gns3a b/gns3server/appliances/fortiproxy.gns3a index 140f5bcd..93de1f51 100644 --- a/gns3server/appliances/fortiproxy.gns3a +++ b/gns3server/appliances/fortiproxy.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "0f57eb3a-7b1c-47d4-96c4-fe8ed60c9f50", "name": "FortiProxy", "category": "firewall", "description": "FortiProxy is a secure web proxy that protects employees against internet-borne attacks by incorporating multiple detection techniques such as web filtering, DNS filtering, data loss prevention, antivirus, intrusion prevention and advanced threat protection. It helps enterprises enforce internet compliance using granular application control.", diff --git a/gns3server/appliances/fortirecorder.gns3a b/gns3server/appliances/fortirecorder.gns3a index b4412c82..9a1331d8 100644 --- a/gns3server/appliances/fortirecorder.gns3a +++ b/gns3server/appliances/fortirecorder.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "754f4df8-934f-4a55-8d32-5bfd922785d9", "name": "FortiRecorder", "category": "guest", "description": "Surveillance systems can be complicated, expensive, and unreliable. But FortiCamera and FortiRecorder simplify IP video surveillance and there are no license fees. With FortiCams, you can see everything: doors, POS terminals, public areas--whatever you need to keep an eye on. FortiRecorder captures the images for easy monitoring, storage, and retrieval. Just plug in your cameras, connect the FortiRecorder, open a web browser or client application, and you're ready to go. It's easy to navigate and configure with event timelines and profile-driven configuration.", diff --git a/gns3server/appliances/fortisandbox.gns3a b/gns3server/appliances/fortisandbox.gns3a index d74d1bab..6d352117 100644 --- a/gns3server/appliances/fortisandbox.gns3a +++ b/gns3server/appliances/fortisandbox.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "88252124-93a4-4851-9b0f-b0f264705c1a", "name": "FortiSandbox", "category": "firewall", "description": "Today's threats are increasingly sophisticated and often bypass traditional malware security by masking their malicious activity. A sandbox augments your security architecture by validating threats in a separate, secure environment. FortiSandbox offers a powerful combination of advanced detection, automated mitigation, actionable insight, and flexible deployment to stop targeted attacks and subsequent data loss. It's also a key component of our Advanced Threat Protection solution.", diff --git a/gns3server/appliances/fortisiem-super_worker.gns3a b/gns3server/appliances/fortisiem-super_worker.gns3a index 9c9f39a7..92c345d3 100644 --- a/gns3server/appliances/fortisiem-super_worker.gns3a +++ b/gns3server/appliances/fortisiem-super_worker.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "b963c9d0-f73b-4a6c-b876-644ae5dd2779", "name": "FortiSIEM", "category": "guest", "description": "Breaches to network security continue to occur across all industry verticals, even to the most respected brands. The time it takes to discover, isolate, and remediate the incident continues to be measured in hundreds of days-having material impacts on security and compliance standards. It is no wonder that many organizations are struggling. As recent surveys have shown, enterprises have an average of 32 different vendors' devices in their network, with no automated ability to cross-correlate the data that each is collecting. It is also easy to see why organizations are strapped for the cyber security personnel they need to manage all the data in these complex environments.\n\nFrom its inception, FortiSIEM was built to reduce complexity in managing network and security operations. FortiSIEM provides organizations of all sizes with a comprehensive, holistic, and scalable solution for managing security, performance, and compliance from IoT to the cloud.", diff --git a/gns3server/appliances/fortiweb.gns3a b/gns3server/appliances/fortiweb.gns3a index 2365d76f..a0924bec 100644 --- a/gns3server/appliances/fortiweb.gns3a +++ b/gns3server/appliances/fortiweb.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "62cc83dc-be46-49b3-80e0-9f0d4d644fc9", "name": "FortiWeb", "category": "firewall", "description": "FortiWeb Web Application Firewalls provide specialized, layered web application threat protection for medium/large enterprises, application service providers, and SaaS providers.", diff --git a/gns3server/appliances/freeRouter.gns3a b/gns3server/appliances/freeRouter.gns3a index d1e0ed21..cc9b887b 100644 --- a/gns3server/appliances/freeRouter.gns3a +++ b/gns3server/appliances/freeRouter.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "691f6552-725f-4dff-a2ba-220f5e3ab6a6", "name": "freeRouter", "category": "router", "description": "networking swiss army knife - it speaks routing protocols, and (re)encapsulates packets on interfaces", diff --git a/gns3server/appliances/freebsd.gns3a b/gns3server/appliances/freebsd.gns3a index 5d6d2bd5..61f62171 100644 --- a/gns3server/appliances/freebsd.gns3a +++ b/gns3server/appliances/freebsd.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "0706912e-be44-45b7-9723-d9c3749dd5ef", "name": "FreeBSD", "category": "guest", "description": "FreeBSD is an advanced computer operating system used to power modern servers, desktops, and embedded platforms. A large community has continually developed it for more than thirty years. Its advanced networking, security, and storage features have made FreeBSD the platform of choice for many of the busiest web sites and most pervasive embedded networking and storage devices.", diff --git a/gns3server/appliances/freenas.gns3a b/gns3server/appliances/freenas.gns3a index 23583e2e..5d2a684a 100644 --- a/gns3server/appliances/freenas.gns3a +++ b/gns3server/appliances/freenas.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "dabaa0d5-8b44-40a6-9a25-6c81129dd315", "name": "FreeNAS", "category": "guest", "description": "FreeNAS is a Free and Open Source Network Attached Storage (NAS) software appliance. This means that you can use FreeNAS to share data over file-based sharing protocols, including CIFS for Windows users, NFS for Unix-like operating systems, and AFP for Mac OS X users. FreeNAS uses the ZFS file system to store, manage, and protect data. ZFS provides advanced features like snapshots to keep old versions of files, incremental remote backups to keep your data safe on another device without huge file transfers, and intelligent compression, which reduces the size of files so quickly and efficiently that it actually helps transfers happen faster.", diff --git a/gns3server/appliances/frr.gns3a b/gns3server/appliances/frr.gns3a index 2765dd81..c05e42cb 100644 --- a/gns3server/appliances/frr.gns3a +++ b/gns3server/appliances/frr.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "64f3dd9e-77bf-492c-a245-26d2a0e9bde8", "name": "FRR", "category": "router", "description": "FRRouting (FRR) is an IP routing protocol suite for Linux and Unix platforms which includes protocol daemons for BGP, IS-IS, LDP, OSPF, PIM, and RIP.\n\nFRR's seamless integration with the native Linux/Unix IP networking stacks makes it applicable to a wide variety of use cases including connecting hosts/VMs/containers to the network, advertising network services, LAN switching and routing, Internet access routers, and Internet peering.\n\nThis is an unofficial VM of FRR.", diff --git a/gns3server/appliances/hp-vsr1001.gns3a b/gns3server/appliances/hp-vsr1001.gns3a index e70d2ea1..015eb771 100644 --- a/gns3server/appliances/hp-vsr1001.gns3a +++ b/gns3server/appliances/hp-vsr1001.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "16e06d10-bf02-4cd8-9807-69b8ef42efed", "name": "HPE VSR1001", "category": "router", "description": "The HPE VSR1000 Virtual Services Router Series is a software application, running on a server, which provides functionality similar to that of a physical router: robust routing between networked devices using a number of popular routing protocols. It also delivers the critical network services associated with today's enterprise routers such as VPN gateway, firewall and other security and traffic management functions.\n\nThe virtual services router (VSR) application runs on a hypervqcor on the server, and supports VMware vSphere and Linux KVM hypervqcors. From one to eight virtual CPUs are supported, depending on license.\n\nBecause the VSR1000 Series application runs the same HPE Comware version 7 operating system as HPE switches and routers, it enables significant operational savings. And being virtual, additional agility and ease of deployment is realized, as resources on the VSR can be dynamically allocated and upgraded upon demand as performance requirements grow.\n\nA variety of deployment models are supported including enterprise branch CPE routing, and cloud offload for small to medium workloads.", diff --git a/gns3server/appliances/huawei-ar1kv.gns3a b/gns3server/appliances/huawei-ar1kv.gns3a index 46fba486..ef2ccfbd 100644 --- a/gns3server/appliances/huawei-ar1kv.gns3a +++ b/gns3server/appliances/huawei-ar1kv.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "84b4ff53-5d0a-492c-bf80-5e8d7e0745ae", "name": "HuaWei AR1000v", "category": "router", "description": "Huawei AR1000V Virtual Router (Virtual CPE, vCPE) is an NFV product based on the industry-leading Huawei VRP platform. The product has rich business capabilities, integrating routing, switching, security, VPN, QoS and other functions, with software and hardware decoupling, Features such as easy business deployment and intelligent operation and maintenance can be applied to scenarios such as enterprise interconnection (SD-WAN) corporate headquarters (Hub point), POP point access, and cloud access.", diff --git a/gns3server/appliances/huawei-ce12800.gns3a b/gns3server/appliances/huawei-ce12800.gns3a index 135c4522..cf5cf6fb 100644 --- a/gns3server/appliances/huawei-ce12800.gns3a +++ b/gns3server/appliances/huawei-ce12800.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "bd86792e-9870-4b42-8f16-cb2776f1d5d5", "name": "HuaWei CE12800", "category": "multilayer_switch", "description": "CE12800 series switches are high-performance core switches designed for data center networks and high-end campus networks. The switches provide stable, reliable, secure, and high-performance Layer 2/Layer 3 switching services, to help build an elastic, virtualized, agile, and high-quality network.", diff --git a/gns3server/appliances/huawei-ne40e.gns3a b/gns3server/appliances/huawei-ne40e.gns3a index 4c07b542..8a039a7c 100644 --- a/gns3server/appliances/huawei-ne40e.gns3a +++ b/gns3server/appliances/huawei-ne40e.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "03aa586b-5666-49e9-a70c-e5935fdbc23d", "name": "HuaWei NE40E", "category": "router", "description": "Based on a 2T platform, the NetEngine 40E-X series provides the industry\u2019s highest capacity 2T routing line cards. Combining performance with low power consumption, innovative Internet Protocol (IP) hard pipe technology, and quick evolution capabilities, NetEngine 40E-X routers meet the low latency and high reliability requirements of business-critical services as well as mature Wide Area Network (WAN) Software-Defined Networking (SDN) solutions. They can serve as core nodes on enterprise WANs, access nodes on large-scale enterprise networks, interconnection and aggregation nodes on campus networks, and edge nodes on large-scale Internet Data Center (IDC) networks.", diff --git a/gns3server/appliances/huawei-usg6kv.gns3a b/gns3server/appliances/huawei-usg6kv.gns3a index 21256ac6..f2d0506c 100644 --- a/gns3server/appliances/huawei-usg6kv.gns3a +++ b/gns3server/appliances/huawei-usg6kv.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "62a59b15-84c7-4ab3-a785-50e139d94c6c", "name": "HuaWei USG6000v", "category": "firewall", "description": "Huawei USG6000V is a virtual service gateway based on Network Functions Virtualization (NFV). It features high virtual resource usage and provides virtualized gateway services, such as vFW, vIPsec, vLB, vIPS, vAV, and vURL Remote Query.\nHuawei USG6000V is compatible with most mainstream virtual platforms. It provides standard APIs, together with the OpenStack cloud platform, SDN Controller, and MANO to achieve intelligent solutions for cloud security. This gateway meets flexible service customization requirements for frequent security service changes, elastic and on-demand resource allocation, visualized network management, and rapid rollout.", diff --git a/gns3server/appliances/internet.gns3a b/gns3server/appliances/internet.gns3a index 7d7ff9ec..489d35ce 100644 --- a/gns3server/appliances/internet.gns3a +++ b/gns3server/appliances/internet.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "f8302832-ad07-47e2-a750-004f700bd47c", "name": "Internet", "category": "router", "description": "This appliance simulate a domestic modem. It provide an IP via DHCP and will nat all connection to the internet without the need of using a cloud interface in your topologies. IP will be in the subnet 172.16.0.0/16. Multiple internet will have different IP range from 172.16.1.0/24 to 172.16.253.0/24 .\n\nWARNING USE IT ONLY WITH THE GNS3 VM.", diff --git a/gns3server/appliances/ipfire.gns3a b/gns3server/appliances/ipfire.gns3a index 5c361a6b..07610b57 100644 --- a/gns3server/appliances/ipfire.gns3a +++ b/gns3server/appliances/ipfire.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "286b3ba3-6646-41d2-b67c-dd6de9da8a5a", "name": "IPFire", "category": "firewall", "description": "IPFire was designed with both modularity and a high-level of flexibility in mind. You can easily deploy many variations of it, such as a firewall, a proxy server or a VPN gateway. The modular design ensures that it runs exactly what you've configured it for and nothing more. Everything is simple to manage and update through the package manager, making maintenance a breeze.", diff --git a/gns3server/appliances/ipterm.gns3a b/gns3server/appliances/ipterm.gns3a index 0fdbdf68..be1875ab 100644 --- a/gns3server/appliances/ipterm.gns3a +++ b/gns3server/appliances/ipterm.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "7f58b246-c4f4-4db2-b4e6-f6180bf235ff", "name": "ipterm", "category": "guest", "description": "ipterm is a debian based networking toolbox.\nIt contains the following utilities: net-tools, iproute2, ping, traceroute, curl, host, iperf3, mtr, socat, ssh client, tcpdump and the multicast testing tools msend/mreceive.", diff --git a/gns3server/appliances/ipxe.gns3a b/gns3server/appliances/ipxe.gns3a index fff2f330..ad4af414 100644 --- a/gns3server/appliances/ipxe.gns3a +++ b/gns3server/appliances/ipxe.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "d6d659ae-b450-4dd8-abf6-face55c3de41", "name": "ipxe", "category": "guest", "description": "boot guest from network via iPXE", diff --git a/gns3server/appliances/juniper-junos-space.gns3a b/gns3server/appliances/juniper-junos-space.gns3a index d4446dfe..ea462c32 100644 --- a/gns3server/appliances/juniper-junos-space.gns3a +++ b/gns3server/appliances/juniper-junos-space.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "3b65c68f-cdde-4dde-a0e7-5ef8c9b7ec2c", "name": "Junos Space", "category": "guest", "description": "Junos Space Network Management Platform works with Juniper's management applications to simplify and automate management of Juniper's switching, routing, and security devices. As part of a complete solution, the platform provides broad fault, configuration, accounting, performance, and security management (FCAPS) capability, same day support for new devices and Junos OS releases, a task-specific user interface, and northbound APIs for integration with existing network management systems (NMS) or operations/business support systems (OSS/BSS).\n\nThe platform helps network operators at enterprises and service providers scale operations, reduce complexity, and enable new applications and services to be brought to market quickly, through multilayered network abstractions, operator-centric automation schemes, and a simple point-and-click UI.", diff --git a/gns3server/appliances/juniper-vmx-legacy.gns3a b/gns3server/appliances/juniper-vmx-legacy.gns3a index d1eb1712..1409c4c7 100644 --- a/gns3server/appliances/juniper-vmx-legacy.gns3a +++ b/gns3server/appliances/juniper-vmx-legacy.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "82b0804c-1ded-44d4-a79e-608f3fb505bd", "name": "Juniper vMX", "category": "router", "description": "The vMX is a full-featured, carrier-grade virtual MX Series 3D Universal Edge Router that extends 15+ years of Juniper Networks edge routing expertise to the virtual realm. This appliance is a single VM pre-release version that does not require to be paired with another VM like in the vCP/vFP architecture.", diff --git a/gns3server/appliances/juniper-vmx-vcp.gns3a b/gns3server/appliances/juniper-vmx-vcp.gns3a index cc31d8c0..6a94a9fb 100644 --- a/gns3server/appliances/juniper-vmx-vcp.gns3a +++ b/gns3server/appliances/juniper-vmx-vcp.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "92ea0431-2325-451f-8c0a-9830ddbe48ad", "name": "Juniper vMX vCP", "category": "router", "description": "The vMX is a full-featured, carrier-grade virtual MX Series 3D Universal Edge Router that extends 15+ years of Juniper Networks edge routing expertise to the virtual realm. This appliance is for the Virtual Control Plane (vCP) VM and is meant to be paired with the Virtual Forwarding Plane (vFP) VM.", @@ -6,7 +7,7 @@ "vendor_url": "https://www.juniper.net/us/en/", "documentation_url": "http://www.juniper.net/techpubs/", "product_name": "Juniper vMX vCP", - "product_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "product_url": "https://www.juniper.net/us/en/products/routers/mx-series/vmx-virtual-router-software.html", "registry_version": 3, "status": "experimental", "maintainer": "none", @@ -28,24 +29,48 @@ "options": "-nographic -enable-kvm" }, "images": [ + { + "filename": "vmxhdd.img", + "version": "1", + "md5sum": "ae26e0f32605a53a5c85342bad677c9f", + "filesize": 197120 + }, { "filename": "junos-vmx-x86-64-20.2R1.10.qcow2", "version": "20.2R1.10-KVM", "md5sum": "182484474accf07bd403ef17fa2959a9", "filesize": 1413349376 }, - { - "filename": "vmxhdd-20.2R1.10.img", - "version": "20.2R1.10-KVM", - "md5sum": "ae26e0f32605a53a5c85342bad677c9f", - "filesize": 197120 - }, { "filename": "metadata-usb-re-20.2R1.10.img", "version": "20.2R1.10-KVM", "md5sum": "25322c2caf542059de72e9adbec1fb68", "filesize": 10485760 }, + { + "filename": "junos-vmx-x86-64-19.4R3-S4.1.qcow2", + "version": "19.4R3-S4.1-OpenStack", + "md5sum": "ffd3901ca4566aa0b0f9566f8183da3b", + "filesize": 1378680832 + }, + { + "filename": "metadata-usb-re.img", + "version": "19.4R3-S4.1-OpenStack", + "md5sum": "d08d8d6c288d0d4588e7cc2b65ea1632", + "filesize": 10485760 + }, + { + "filename": "junos-vmx-x86-64-19.3R1.8.qcow2", + "version": "19.3R1.8-KVM", + "md5sum": "cd14a6884edeb6b337d3c2be02241c63", + "filesize": 1435238400 + }, + { + "filename": "metadata-usb-re-19.3R1.8.img", + "version": "19.3R1.8-KVM", + "md5sum": "3c66c4657773a0cd2b38ffd84115446a", + "filesize": 10485760 + }, { "filename": "junos-vmx-x86-64-17.4R1.16.qcow2", "version": "17.4R1.16-KVM", @@ -343,10 +368,26 @@ "name": "20.2R1.10-KVM", "images": { "hda_disk_image": "junos-vmx-x86-64-20.2R1.10.qcow2", - "hdb_disk_image": "vmxhdd-20.2R1.10.img", + "hdb_disk_image": "vmxhdd.img", "hdc_disk_image": "metadata-usb-re-20.2R1.10.img" } }, + { + "name": "19.4R3-S4.1-OpenStack", + "images": { + "hda_disk_image": "junos-vmx-x86-64-19.4R3-S4.1.qcow2", + "hdb_disk_image": "vmxhdd.img", + "hdc_disk_image": "metadata-usb-re.img" + } + }, + { + "name": "19.3R1.8-KVM", + "images": { + "hda_disk_image": "junos-vmx-x86-64-19.3R1.8.qcow2", + "hdb_disk_image": "vmxhdd.img", + "hdc_disk_image": "metadata-usb-re-19.3R1.8.img" + } + }, { "name": "17.4R1.16-KVM", "images": { diff --git a/gns3server/appliances/juniper-vmx-vfp.gns3a b/gns3server/appliances/juniper-vmx-vfp.gns3a index 9e6a9e35..626a3c3c 100644 --- a/gns3server/appliances/juniper-vmx-vfp.gns3a +++ b/gns3server/appliances/juniper-vmx-vfp.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "31094219-7691-4eb1-8337-bb0a756a24a8", "name": "Juniper vMX vFP", "category": "router", "description": "The vMX is a full-featured, carrier-grade virtual MX Series 3D Universal Edge Router that extends 15+ years of Juniper Networks edge routing expertise to the virtual realm. This appliance is for the Virtual Forwarding Plane (vFP) VM and is meant to be paired with the Virtual Control Plane (vCP) VM.", @@ -33,6 +34,13 @@ "filesize": 2447376384, "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/" }, + { + "filename": "vFPC-20210115.img", + "version": "19.4R3-S4.1-OpenStack", + "md5sum": "a218029c288d32278d7c483a69de35c0", + "filesize": 2447376384, + "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/" + }, { "filename": "vFPC-20190819.img", "version": "19.3R1.8-KVM", @@ -160,6 +168,12 @@ "hda_disk_image": "vFPC-20200526.img" } }, + { + "name": "19.4R3-S4.1-OpenStack", + "images": { + "hda_disk_image": "vFPC-20210115.img" + } + }, { "name": "19.3R1.8-KVM", "images": { diff --git a/gns3server/appliances/juniper-vqfx-pfe.gns3a b/gns3server/appliances/juniper-vqfx-pfe.gns3a index 889e982b..b605c22e 100644 --- a/gns3server/appliances/juniper-vqfx-pfe.gns3a +++ b/gns3server/appliances/juniper-vqfx-pfe.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "5c32105f-0492-463e-bada-1d8dec88dcc7", "name": "Juniper vQFX PFE", "category": "multilayer_switch", "description": "The vQFX10000 makes it easy for you to try out our physical QFX10000 high-performance data center switch without the wait for physical delivery. Although the virtual version has limited performance relative to the physical switch, it lets you quickly emulate the same features for the control plane of the physical switch, or both its control and data planes.", diff --git a/gns3server/appliances/juniper-vqfx-re.gns3a b/gns3server/appliances/juniper-vqfx-re.gns3a index 31c2710d..4235c280 100644 --- a/gns3server/appliances/juniper-vqfx-re.gns3a +++ b/gns3server/appliances/juniper-vqfx-re.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "967f0f22-8235-4f9b-b0f8-6f50cb146d8f", "name": "Juniper vQFX RE", "category": "multilayer_switch", "description": "The vQFX10000 makes it easy for you to try out our physical QFX10000 high-performance data center switch without the wait for physical delivery. Although the virtual version has limited performance relative to the physical switch, it lets you quickly emulate the same features for the control plane of the physical switch, or both its control and data planes.", diff --git a/gns3server/appliances/juniper-vrr.gns3a b/gns3server/appliances/juniper-vrr.gns3a index 593194ae..f1892c30 100644 --- a/gns3server/appliances/juniper-vrr.gns3a +++ b/gns3server/appliances/juniper-vrr.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "2e2b0348-bf5c-43da-823e-aa0a61c0f8fe", "name": "Juniper vRR", "category": "router", "description": "The vRR is a full-featured, carrier-grade virtual route reflector software that extends 15+ years of Juniper Networks edge routing expertise to the virtual realm.", diff --git a/gns3server/appliances/juniper-vsrx.gns3a b/gns3server/appliances/juniper-vsrx.gns3a index 356fa421..d78ed8a2 100644 --- a/gns3server/appliances/juniper-vsrx.gns3a +++ b/gns3server/appliances/juniper-vsrx.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "23b231f5-efb9-4e19-9e4d-f1672d442d78", "name": "vSRX", "category": "firewall", "description": "The vSRX delivers core firewall, networking, advanced security, and automated lifecycle management capabilities for enterprises and service providers. The industry's fastest virtual security platform, the vSRX offers firewall speeds up to 17 Gbps using only two virtual CPUs, providing scalable, secure protection across private, public, and hybrid clouds.\n\nJuniper version 12 can support only 1GB of ram.", diff --git a/gns3server/appliances/jupyter.gns3a b/gns3server/appliances/jupyter.gns3a index 3bc584ba..3ba8b88a 100644 --- a/gns3server/appliances/jupyter.gns3a +++ b/gns3server/appliances/jupyter.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "9436eef5-de64-40f8-9ae4-28d9d2f582ba", "name": "Jupyter", "category": "guest", "description": "The Jupyter Notebook is an open-source web application that allows you to create and share documents that contain live code, equations, visualizations and explanatory text. Uses include: data cleaning and transformation, numerical simulation, statistical modeling, machine learning and much more.", diff --git a/gns3server/appliances/jupyter27.gns3a b/gns3server/appliances/jupyter27.gns3a index 07ae498b..30ac7a14 100644 --- a/gns3server/appliances/jupyter27.gns3a +++ b/gns3server/appliances/jupyter27.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "8814bb98-3ae7-4bc3-a3e3-1a4dc1369dbd", "name": "Jupyter 2.7", "category": "guest", "description": "The Jupyter Notebook is an open-source web application that allows you to create and share documents that contain live code, equations, visualizations and explanatory text. Uses include: data cleaning and transformation, numerical simulation, statistical modeling, machine learning and much more. This appliance provide python 2.7.", diff --git a/gns3server/appliances/kali-linux-cli.gns3a b/gns3server/appliances/kali-linux-cli.gns3a index c94fcdcd..89585cac 100644 --- a/gns3server/appliances/kali-linux-cli.gns3a +++ b/gns3server/appliances/kali-linux-cli.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "810c0dbf-21ae-478e-9d42-cc3d803064b7", "name": "Kali Linux CLI", "category": "guest", "description": "From the creators of BackTrack comes Kali Linux, the most advanced and versatile penetration testing platform ever created. We have a set of amazing features lined up in our security distribution geared at streamlining the penetration testing experience. This version has no GUI.Include packages:\n* nmap\n* metasploit\n* sqlmap\n* hydra\n* telnet client\n* dnsutils (dig)", diff --git a/gns3server/appliances/kali-linux.gns3a b/gns3server/appliances/kali-linux.gns3a index ea215748..c5ad4112 100644 --- a/gns3server/appliances/kali-linux.gns3a +++ b/gns3server/appliances/kali-linux.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "cb854aa6-379c-4458-8c4c-2164fa9ec98d", "name": "Kali Linux", "category": "guest", "description": "From the creators of BackTrack comes Kali Linux, the most advanced and versatile penetration testing platform ever created. We have a set of amazing features lined up in our security distribution geared at streamlining the penetration testing experience.", diff --git a/gns3server/appliances/kemp-vlm.gns3a b/gns3server/appliances/kemp-vlm.gns3a index 15ca8df2..0f02a734 100644 --- a/gns3server/appliances/kemp-vlm.gns3a +++ b/gns3server/appliances/kemp-vlm.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "da509b39-f0ec-4a63-a88c-ad8e9c712ee3", "name": "KEMP Free VLM", "category": "router", "description": "KEMP Technologies free LoadMaster Application Load Balancer is a fully featured member of our award winning and industry leading Load Balancer family. It can be used without charge in production environments with throughput requirements that don't exceed 20 Mbps, and for services that do not directly generate revenue. It is an ideal choice for low traffic web sites and applications, DevOps testing environments, technical training environments, and for any other deployments that suit your non-commercial needs.", diff --git a/gns3server/appliances/kerio-connect.gns3a b/gns3server/appliances/kerio-connect.gns3a index e8002108..d7e9bb0e 100644 --- a/gns3server/appliances/kerio-connect.gns3a +++ b/gns3server/appliances/kerio-connect.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "3efc41ea-bdb1-4c05-b12b-ef96a75fd63f", "name": "Kerio Connect", "category": "guest", "description": "Kerio Connect makes email, calendars, contacts and task management easy and affordable. With Kerio Connect, you have immediate, secure access to your communications anytime, anywhere, on any device - without complexity or expensive overhead.", diff --git a/gns3server/appliances/kerio-control.gns3a b/gns3server/appliances/kerio-control.gns3a index 2f29fb4e..baaf2b39 100644 --- a/gns3server/appliances/kerio-control.gns3a +++ b/gns3server/appliances/kerio-control.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "dd935ae3-5adb-4316-a963-6e4d8bbeed5f", "name": "Kerio Control", "category": "firewall", "description": "Protect your network from viruses, malware and malicious activity with Kerio Control, the easy-to-administer yet powerful all-in-one security solution.\nKerio Control brings together next-generation firewall capabilities - including a network firewall and router, intrusion detection and prevention (IPS), gateway anti-virus, VPN, and web content and application filtering. These comprehensive capabilities and unmatched deployment flexibility make Kerio Control the ideal choice for small and mid-sized businesses.", diff --git a/gns3server/appliances/kerio-operator.gns3a b/gns3server/appliances/kerio-operator.gns3a index 7d4bf307..83d68701 100644 --- a/gns3server/appliances/kerio-operator.gns3a +++ b/gns3server/appliances/kerio-operator.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "114d380e-302f-456d-b44d-ec47e1d22774", "name": "Kerio Operator", "category": "guest", "description": "Stay connected to your customers and colleagues without being chained to your desk.\nKerio Operator is a VoIP based phone system that provides powerful yet affordable enterprise-class voice and video communication capabilities for small and mid-sized businesses globally.", diff --git a/gns3server/appliances/loadbalancer_org-va.gns3a b/gns3server/appliances/loadbalancer_org-va.gns3a index 868aa4db..c8479f65 100644 --- a/gns3server/appliances/loadbalancer_org-va.gns3a +++ b/gns3server/appliances/loadbalancer_org-va.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "1f197327-9beb-48da-a3fc-f5fb721dc335", "name": "Loadbalancer.org Enterprise VA", "category": "router", "description": "Don't you hate it when companies artificially cripple performance? We just give you two simple choices - Now isn't that a refreshing change?", diff --git a/gns3server/appliances/macos-install.gns3a b/gns3server/appliances/macos-install.gns3a index 5f920187..5556b285 100644 --- a/gns3server/appliances/macos-install.gns3a +++ b/gns3server/appliances/macos-install.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "e250158f-bfb1-4a9c-ab00-bcad9c79eacc", "name": "macOS", "category": "guest", "description": "macOS", diff --git a/gns3server/appliances/mcjoin.gns3a b/gns3server/appliances/mcjoin.gns3a index 74515a34..d99ff3ff 100644 --- a/gns3server/appliances/mcjoin.gns3a +++ b/gns3server/appliances/mcjoin.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "c80f3423-20bf-4a12-b8fd-3eb2c747eabb", "name": "mcjoin", "category": "guest", "description": "mcjoin is a very simple and easy-to-use tool to test IPv4 and IPv6 multicast.", diff --git a/gns3server/appliances/microcore-linux.gns3a b/gns3server/appliances/microcore-linux.gns3a index 0b42f6e1..0085a680 100644 --- a/gns3server/appliances/microcore-linux.gns3a +++ b/gns3server/appliances/microcore-linux.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "361f1e33-f6a5-4e6e-9268-9605053bd059", "name": "Micro Core Linux", "category": "guest", "description": "Micro Core Linux is a smaller variant of Tiny Core without a graphical desktop.\n\nThis is complete Linux system needing few resources to run.", diff --git a/gns3server/appliances/mikrotik-chr.gns3a b/gns3server/appliances/mikrotik-chr.gns3a index 707cdfc2..dc534a31 100644 --- a/gns3server/appliances/mikrotik-chr.gns3a +++ b/gns3server/appliances/mikrotik-chr.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "05512118-2b99-4789-90d3-5135665c3ec5", "name": "MikroTik CHR", "category": "router", "description": "Cloud Hosted Router (CHR) is a RouterOS version meant for running as a virtual machine. It supports x86 64-bit architecture and can be used on most of popular hypervisors such as VMWare, Hyper-V, VirtualBox, KVM and others. CHR has full RouterOS features enabled by default but has a different licensing model than other RouterOS versions.", diff --git a/gns3server/appliances/mininet.gns3a b/gns3server/appliances/mininet.gns3a index 50540c20..0a2c209c 100644 --- a/gns3server/appliances/mininet.gns3a +++ b/gns3server/appliances/mininet.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "1248f9d1-fdaf-4cea-b036-195520b44d28", "name": "Mininet", "category": "guest", "description": "Mininet creates a realistic virtual network, running real kernel, switch and application code, on a single machine (VM, cloud or native), in seconds, with a single command.", diff --git a/gns3server/appliances/net_toolbox.gns3a b/gns3server/appliances/net_toolbox.gns3a index af6bdf13..3bcc2a6b 100644 --- a/gns3server/appliances/net_toolbox.gns3a +++ b/gns3server/appliances/net_toolbox.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "9fa5056a-15a6-4bb0-8b71-c0a6b5cfeea6", "name": "Toolbox", "category": "guest", "description": "This appliance contains server side software for secondary management of network devices:\n- www (nginx) \n- ftp (vsftpd)\n- tftp (tftpd)\n- syslog (rsyslog)\n- dhcp (isc-dhcpd)\n- snmp server (snmpd + snmptrapd)", diff --git a/gns3server/appliances/netem.gns3a b/gns3server/appliances/netem.gns3a index 3b17c9c3..85302f39 100644 --- a/gns3server/appliances/netem.gns3a +++ b/gns3server/appliances/netem.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "4b027aee-8214-4c97-ad8b-89abc67641bd", "name": "NETem", "category": "guest", "description": "NETem emulates a network link, typically a WAN link. It supports bandwidth limitation, delay, jitter and packet loss. All this functionality is already build in the linux kernel, NETem is just a menu system to make the configuration user-friendly.", diff --git a/gns3server/appliances/network_automation.gns3a b/gns3server/appliances/network_automation.gns3a index b0607cf6..8d10a494 100644 --- a/gns3server/appliances/network_automation.gns3a +++ b/gns3server/appliances/network_automation.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "a61b580a-99c5-4d77-bc25-61f4c60d214f", "name": "Network Automation", "category": "guest", "description": "This container provides the popular tools used for network automation: Netmiko, NAPALM, Pyntc, and Ansible.", diff --git a/gns3server/appliances/nokia-vsim.gns3a b/gns3server/appliances/nokia-vsim.gns3a new file mode 100644 index 00000000..c44de2af --- /dev/null +++ b/gns3server/appliances/nokia-vsim.gns3a @@ -0,0 +1,47 @@ +{ + "appliance_id": "98525a92-5146-46e9-996c-b6d9dc0a449f", + "name": "Nokia vSIM", + "category": "router", + "description": "The Nokia Virtualized 7750 SR and 7950 XRS Simulator (vSIM) is a Virtualized Network Function (VNF) that simulates the control, management, and forwarding functions of a 7750 SR or 7950 XRS router. The vSIM runs the same Service Router Operating System (SR OS) as 7750 SR and 7950 XRS hardware-based routers and, therefore, has the same feature set and operational behavior as those platforms.", + "vendor_name": "Nokia", + "vendor_url": "https://www.nokia.com/networks/", + "documentation_url": "https://documentation.nokia.com/", + "product_name": "Nokia vSIM", + "product_url": "https://www.nokia.com/networks/products/virtualized-service-router/", + "registry_version": 4, + "status": "experimental", + "maintainer": "Vinicius Rocha", + "maintainer_email": "viniciusatr@gmail.com", + "usage": "Login is admin and password is admin. \n\nWe are using one IOM with one MDA 12x100G (w/ breakout).\n\nYou must add your license: file vi cf3:license.txt", + "first_port_name": "A/1", + "port_name_format": "1/1/{port1}", + "qemu": { + "adapter_type": "virtio-net-pci", + "adapters": 13, + "ram": 4096, + "cpus": 2, + "hda_disk_interface": "virtio", + "arch": "x86_64", + "console_type": "telnet", + "kvm": "require", + "options": "-nographic -smbios type=1,product=TIMOS:license-file=cf3:license.txt\\ slot=A\\ chassis=SR-1\\ card=cpm-1\\ mda/1=me12-100gb-qsfp28" + }, + "images": [ + { + "filename": "sros-vsr-21.7.R1.qcow2", + "version": "21.7.R1", + "md5sum": "7eed38c01350ebaf9c6105e26ce5307e", + "filesize": 568655872, + "download_url": "https://customer.nokia.com/support/s/", + "compression": "zip" + } + ], + "versions": [ + { + "name": "21.7.R1", + "images": { + "hda_disk_image": "sros-vsr-21.7.R1.qcow2" + } + } + ] +} diff --git a/gns3server/appliances/ntopng.gns3a b/gns3server/appliances/ntopng.gns3a index 6c5b58c6..2f33c3ef 100644 --- a/gns3server/appliances/ntopng.gns3a +++ b/gns3server/appliances/ntopng.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "a8ca42e8-37f0-4bbb-a028-557eb882f909", "name": "ntopng", "category": "guest", "description": "ntopng is the next generation version of the original ntop, a network traffic probe that shows the network usage, similar to what the popular top Unix command does. ntopng is based on libpcap and it has been written in a portable way in order to virtually run on every Unix platform, MacOSX and on Windows as well. ntopng users can use a a web browser to navigate through ntop (that acts as a web server) traffic information and get a dump of the network status. In the latter case, ntopng can be seen as a simple RMON-like agent with an embedded web interface.", diff --git a/gns3server/appliances/onos.gns3a b/gns3server/appliances/onos.gns3a index 848dac12..28f7f6ab 100644 --- a/gns3server/appliances/onos.gns3a +++ b/gns3server/appliances/onos.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "a5d624de-9af2-4e7e-b8e1-055df9aaa446", "name": "Onos", "category": "multilayer_switch", "description": "The Open Network Operating System (ONOS) is a software defined networking (SDN) OS for service providers that has scalability, high availability, high performance and abstractions to make it easy to create apps and services. The platform is based on a solid architecture and has quickly matured to be feature rich and production ready. The community has grown to include over 50 partners and collaborators that contribute to all aspects of the project including interesting use cases such as CORD", diff --git a/gns3server/appliances/op5-monitor.gns3a b/gns3server/appliances/op5-monitor.gns3a index d6adc3f7..70f97de9 100644 --- a/gns3server/appliances/op5-monitor.gns3a +++ b/gns3server/appliances/op5-monitor.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "9a1aaa70-b666-4f8a-94ff-239254ca1b8a", "name": "OP5 Monitor", "category": "guest", "description": "Over 200,000 IT staff across medium to large enterprises worldwide are currently using OP5 Monitor as their preferred network monitoring software.\nOP5 Monitor allows you to take control of your IT, enabling your network to be more responsive, more reliable and even faster than ever before. With unparalleled scalability, OP5 Monitor grows as your company grows, so you'll understand why we say this is the last network monitor you'll ever need to purchase.", diff --git a/gns3server/appliances/open-media-vault.gns3a b/gns3server/appliances/open-media-vault.gns3a index 6bc5ef04..26c7fbe0 100644 --- a/gns3server/appliances/open-media-vault.gns3a +++ b/gns3server/appliances/open-media-vault.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "6fe715ad-4c27-4f65-97f7-f8c1d7cd3e0a", "name": "OpenMediaVault", "category": "guest", "description": "openmediavault is the next generation network attached storage (NAS) solution based on Debian Linux. It contains services like SSH, (S)FTP, SMB/CIFS, DAAP media server, RSync, BitTorrent client and many more.", @@ -7,7 +8,7 @@ "documentation_url": "hhttps://docs.openmediavault.org", "product_name": "OpenMediaVault", "product_url": "https://www.openmediavault.org/", - "registry_version": 3, + "registry_version": 4, "status": "stable", "maintainer": "Savio D'souza", "maintainer_email": "savio2002@yahoo.in", @@ -17,21 +18,29 @@ "adapter_type": "e1000", "adapters": 1, "ram": 2048, - "hda_disk_interface": "ide", - "hdb_disk_interface": "ide", + "hda_disk_interface": "sata", + "hdb_disk_interface": "sata", "arch": "x86_64", "console_type": "vnc", "boot_priority": "dc", "kvm": "require" }, "images": [ + { + "filename": "openmediavault_5.6.13-amd64.iso", + "version": "5.6.13", + "md5sum": "f08b41a5111fffca0355d53e26ec47ab", + "filesize": 652214272, + "download_url": "https://www.openmediavault.org/download.html", + "direct_download_url": "https://sourceforge.net/projects/openmediavault/files/5.6.13/openmediavault_5.6.13-amd64.iso/download" + }, { "filename": "openmediavault_5.5.11-amd64.iso", "version": "5.5.11", "md5sum": "76baad8e13dd49bee9b4b4a6936b7296", "filesize": 608174080, "download_url": "https://www.openmediavault.org/download.html", - "direct_download_url": "https://sourceforge.net/projects/openmediavault/files/latest/download" + "direct_download_url": "https://sourceforge.net/projects/openmediavault/files/5.5.11/openmediavault_5.5.11-amd64.iso/download" }, { "filename": "empty30G.qcow2", @@ -43,6 +52,14 @@ } ], "versions": [ + { + "name": "5.6.13", + "images": { + "hda_disk_image": "empty30G.qcow2", + "hdb_disk_image": "empty30G.qcow2", + "cdrom_image": "openmediavault_5.6.13-amd64.iso" + } + }, { "name": "5.5.11", "images": { diff --git a/gns3server/appliances/openbsd.gns3a b/gns3server/appliances/openbsd.gns3a index 87bd0738..d39c956d 100644 --- a/gns3server/appliances/openbsd.gns3a +++ b/gns3server/appliances/openbsd.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "88903903-8e64-4439-bc4f-a0ed45e29e56", "name": "OpenBSD", "category": "guest", "description": "The OpenBSD project produces a FREE, multi-platform 4.4BSD-based UNIX-like operating system. Our efforts emphasize portability, standardization, correctness, proactive security and integrated cryptography. As an example of the effect OpenBSD has, the popular OpenSSH software comes from OpenBSD.", diff --git a/gns3server/appliances/opennac.gns3a b/gns3server/appliances/opennac.gns3a index 37e9e45a..f189c9c4 100644 --- a/gns3server/appliances/opennac.gns3a +++ b/gns3server/appliances/opennac.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "83a83c12-7265-4761-87f3-e37f2254badb", "name": "OpenNAC", "category": "guest", "description": "openNAC is an opensource Network Access Control for corporate LAN / WAN environments. It enables authentication, authorization and audit policy-based all access to network. It supports diferent network vendors like Cisco, Alcatel, 3Com or Extreme Networks, and different clients like PCs with Windows or Linux, Mac,devices like smartphones and tablets. Based on open source components and self-development It is based on industry standards such as FreeRadius, 802.1x, AD, ldap, ...It is very extensible, new features can be incorporated because it is architectured in plugins. Easily integrated with existing systems Last but not least, It provides value added services such as configuration management, network, backup configurations, Network Discovery and Network Monitoring. Download the OVA, then extract the VMDK (tar -xvf FILE.ova), then convert to qcow2 (qemu-img convert -O qcow2 FILE.vmdk FILE.qcow2).", diff --git a/gns3server/appliances/opensuse.gns3a b/gns3server/appliances/opensuse.gns3a index 6abdd916..8c1d8731 100644 --- a/gns3server/appliances/opensuse.gns3a +++ b/gns3server/appliances/opensuse.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "260d25d8-7cbf-4cc9-9163-7d502fef84b3", "name": "openSUSE", "category": "guest", "description": "openSUSE is a free and Linux-based operating system for PC, Laptop or Server. The openSUSE project is a community program sponsored by Novell. It is a general purpose operating system built on top of the Linux kernel, developed by the community-supported openSUSE Project and sponsored by SUSE and a number of other companies.", diff --git a/gns3server/appliances/openvswitch-management.gns3a b/gns3server/appliances/openvswitch-management.gns3a index 398acff7..a9637293 100644 --- a/gns3server/appliances/openvswitch-management.gns3a +++ b/gns3server/appliances/openvswitch-management.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "1e9ff21e-4de8-4ae1-bde8-ed905ea96838", "name": "Open vSwitch management", "category": "multilayer_switch", "description": "Open vSwitch is a production quality, multilayer virtual switch licensed under the open source Apache 2.0 license. It is designed to enable massive network automation through programmatic extension, while still supporting standard management interfaces and protocols (e.g. NetFlow, sFlow, IPFIX, RSPAN, CLI, LACP, 802.1ag). In addition, it is designed to support distribution across multiple physical servers similar to VMware's vNetwork distributed vswitch or Cisco's Nexus 1000V. This is a version of the appliance with a management interface on eth0.", diff --git a/gns3server/appliances/openvswitch.gns3a b/gns3server/appliances/openvswitch.gns3a index c35b6a68..e792689a 100644 --- a/gns3server/appliances/openvswitch.gns3a +++ b/gns3server/appliances/openvswitch.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "fa32278f-cefb-4291-b94e-771457bd419f", "name": "Open vSwitch", "category": "multilayer_switch", "description": "Open vSwitch is a production quality, multilayer virtual switch licensed under the open source Apache 2.0 license. It is designed to enable massive network automation through programmatic extension, while still supporting standard management interfaces and protocols (e.g. NetFlow, sFlow, IPFIX, RSPAN, CLI, LACP, 802.1ag). In addition, it is designed to support distribution across multiple physical servers similar to VMware's vNetwork distributed vswitch or Cisco's Nexus 1000V.", diff --git a/gns3server/appliances/openwrt-realview.gns3a b/gns3server/appliances/openwrt-realview.gns3a index 91598813..ee520702 100644 --- a/gns3server/appliances/openwrt-realview.gns3a +++ b/gns3server/appliances/openwrt-realview.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "c15b0dda-3ac2-4990-9a90-f6d0ead6935b", "name": "OpenWrt Realview", "category": "router", "description": "OpenWrt is a highly extensible GNU/Linux distribution for embedded devices (typically wireless routers). Unlike many other distributions for these routers, OpenWrt is built from the ground up to be a full-featured, easily modifiable operating system for your router. In practice, this means that you can have all the features you need with none of the bloat, powered by a Linux kernel that's more recent than most other distributions.\n\nThe realview platform is meant for use with QEMU for emulating an ARM system.", diff --git a/gns3server/appliances/openwrt.gns3a b/gns3server/appliances/openwrt.gns3a index a8b8fca8..1007d903 100644 --- a/gns3server/appliances/openwrt.gns3a +++ b/gns3server/appliances/openwrt.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "5a6f68c9-62ac-4b80-80cb-959398fb2c03", "name": "OpenWrt", "category": "router", "description": "OpenWrt is a highly extensible GNU/Linux distribution for embedded devices (typically wireless routers). Unlike many other distributions for these routers, OpenWrt is built from the ground up to be a full-featured, easily modifiable operating system for your router. In practice, this means that you can have all the features you need with none of the bloat, powered by a Linux kernel that's more recent than most other distributions.", @@ -22,6 +23,24 @@ "kvm": "allow" }, "images": [ + { + "filename": "openwrt-21.02.0-x86-64-generic-ext4-combined.img", + "version": "21.02.0", + "md5sum": "1ba2a5c5c05e592c36a469a8ecd3bcf5", + "filesize": 126353408, + "download_url": "https://downloads.openwrt.org/releases/21.02.0/targets/x86/64/", + "direct_download_url": "https://downloads.openwrt.org/releases/21.02.0/targets/x86/64/openwrt-21.02.0-x86-64-generic-ext4-combined.img.gz", + "compression": "gzip" + }, + { + "filename": "openwrt-19.07.8-x86-64-combined-ext4.img", + "version": "19.07.8", + "md5sum": "a9d9776a96968a2042484330f285cae3", + "filesize": 285736960, + "download_url": "https://downloads.openwrt.org/releases/19.07.8/targets/x86/64/", + "direct_download_url": "https://downloads.openwrt.org/releases/19.07.8/targets/x86/64/openwrt-19.07.8-x86-64-combined-ext4.img", + "compression": "gzip" + }, { "filename": "openwrt-19.07.7-x86-64-combined-ext4.img", "version": "19.07.7", @@ -168,6 +187,18 @@ } ], "versions": [ + { + "name": "21.02.0", + "images": { + "hda_disk_image": "openwrt-21.02.0-x86-64-generic-ext4-combined.img" + } + }, + { + "name": "19.07.8", + "images": { + "hda_disk_image": "openwrt-19.07.8-x86-64-combined-ext4.img" + } + }, { "name": "19.07.7", "images": { diff --git a/gns3server/appliances/opnsense.gns3a b/gns3server/appliances/opnsense.gns3a index b5039076..9da90e76 100644 --- a/gns3server/appliances/opnsense.gns3a +++ b/gns3server/appliances/opnsense.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "b103d66a-dd2a-4cf5-8e16-8a96e1660f70", "name": "OPNsense", "category": "firewall", "description": "OPNsense is an open source, easy-to-use and easy-to-build FreeBSD based firewall and routing platform. OPNsense includes most of the features available in expensive commercial firewalls, and more in many cases. It brings the rich feature set of commercial offerings with the benefits of open and verifiable sources.\n\nOPNsense started as a fork of pfSense\u00ae and m0n0wall in 2014, with its first official release in January 2015. The project has evolved very quickly while still retaining familiar aspects of both m0n0wall and pfSense. A strong focus on security and code quality drives the development of the project.", diff --git a/gns3server/appliances/ostinato.gns3a b/gns3server/appliances/ostinato.gns3a index 7e72c1e9..585b67ef 100644 --- a/gns3server/appliances/ostinato.gns3a +++ b/gns3server/appliances/ostinato.gns3a @@ -1,24 +1,28 @@ { + "appliance_id": "915a93b4-b78f-47b4-9a6e-cadc25d55c0a", "name": "Ostinato", "category": "guest", - "description": "Ostinato is an open-source, cross-platform network packet crafter/traffic generator and analyzer with a friendly GUI. Craft and send packets of several streams with different protocols at different rates.", + "description": "Packet crafter and traffic generator for network engineers", "vendor_name": "Ostinato", - "vendor_url": "http://ostinato.org/", - "documentation_url": "http://ostinato.org/docs.html", + "vendor_url": "https://ostinato.org/", + "documentation_url": "https://ostinato.org/docs", "product_name": "Ostinato", - "product_url": "http://ostinato.org/", - "registry_version": 3, - "status": "experimental", - "maintainer": "Bernhard Ehlers", - "maintainer_email": "be@bernhard-ehlers.de", - "usage": "Use interfaces starting with eth1 as traffic interfaces, eth0 is only for the (optional) management of the server/drone.", - "symbol": "ostinato-3d-icon.svg", - "port_name_format": "eth{0}", + "product_url": "https://ostinato.org/", + "registry_version": 4, + "status": "stable", + "availability": "service-contract", + "maintainer": "Srivats P", + "maintainer_email": "support@ostinato.org", + "symbol": ":/symbols/affinity/circle/gray/cog.svg", + "first_port_name": "eth0/mgmt", + "port_name_format": "eth{port1}", + "linked_clone": true, "qemu": { "adapter_type": "e1000", "adapters": 4, "ram": 256, - "hda_disk_interface": "ide", + "cpus": 2, + "hda_disk_interface": "sata", "arch": "i386", "console_type": "vnc", "kvm": "allow", @@ -26,33 +30,18 @@ }, "images": [ { - "filename": "ostinato-0.9-1.qcow2", - "version": "0.9", - "md5sum": "00b4856ec9fffbcbcab7a8f757355d69", - "filesize": 101646336, - "download_url": "http://www.bernhard-ehlers.de/projects/ostinato4gns3/index.html", - "direct_download_url": "http://www.bernhard-ehlers.de/projects/ostinato4gns3/ostinato-0.9-1.qcow2" - }, - { - "filename": "ostinato-0.8-1.qcow2", - "version": "0.8", - "md5sum": "12e990ba695103cfac82f8771b8015d4", - "filesize": 57344000, - "download_url": "http://www.bernhard-ehlers.de/projects/ostinato4gns3/index.html", - "direct_download_url": "http://www.bernhard-ehlers.de/projects/ostinato4gns3/ostinato-0.8-1.qcow2" + "filename": "ostinatostd-1.1-1.qcow2", + "version": "1.1", + "md5sum": "aa027e83cefea1c38d0102eb2f28956e", + "filesize": 134217728, + "download_url": "https://ostinato.org/pricing/gns3" } ], "versions": [ { - "name": "0.9", + "name": "1.1", "images": { - "hda_disk_image": "ostinato-0.9-1.qcow2" - } - }, - { - "name": "0.8", - "images": { - "hda_disk_image": "ostinato-0.8-1.qcow2" + "hda_disk_image": "ostinatostd-1.1-1.qcow2" } } ] diff --git a/gns3server/appliances/packetfence-zen.gns3a b/gns3server/appliances/packetfence-zen.gns3a index 55028ad3..6a6a8dea 100644 --- a/gns3server/appliances/packetfence-zen.gns3a +++ b/gns3server/appliances/packetfence-zen.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "c5b386b4-f722-432c-a36e-d124ff551748", "name": "PacketFence ZEN", "category": "guest", "description": "PacketFence is a fully supported, trusted, Free and Open Source network access control (NAC) solution. Boasting an impressive feature set including a captive-portal for registration and remediation, centralized wired and wireless management, 802.1X support, layer-2 isolation of problematic devices, integration with the Snort IDS and the Nessus vulnerability scanner; PacketFence can be used to effectively secure networks - from small to very large heterogeneous networks.", diff --git a/gns3server/appliances/pan-vm-fw.gns3a b/gns3server/appliances/pan-vm-fw.gns3a index a0bb01d5..25f8725e 100644 --- a/gns3server/appliances/pan-vm-fw.gns3a +++ b/gns3server/appliances/pan-vm-fw.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "18c4b920-e467-46c3-a74d-b9e0eed1891f", "name": "PA-VM", "category": "firewall", "description": "The VM-Series combines next-generation firewall security and advanced threat prevention to protect your virtualized environments from advanced cyberthreats. The VM-Series natively analyzes all traffic in a single pass to determine the application identity, the content within, and the user identity.", diff --git a/gns3server/appliances/parrot-os.gns3a b/gns3server/appliances/parrot-os.gns3a index f2347c80..e9270803 100644 --- a/gns3server/appliances/parrot-os.gns3a +++ b/gns3server/appliances/parrot-os.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "9660509e-ae0c-4c70-a4bc-dff156058924", "name": "ParrotOS", "category": "guest", "description": " Parrot is a GNU/Linux distribution based on Debian Testing and designed with Security, Development and Privacy in mind. It includes a full portable laboratory for security and digital forensics experts, but it also includes all you need to develop your own software or protect your privacy while surfing the net.", diff --git a/gns3server/appliances/pfsense.gns3a b/gns3server/appliances/pfsense.gns3a index 329f2a24..bead2dc7 100644 --- a/gns3server/appliances/pfsense.gns3a +++ b/gns3server/appliances/pfsense.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "f7792111-df9a-42eb-bbac-b798495d68f3", "name": "pfSense", "category": "firewall", "description": "The pfSense project is a free network firewall distribution, based on the FreeBSD operating system with a custom kernel and including third party free software packages for additional functionality. pfSense software, with the help of the package system, is able to provide the same functionality or more of common commercial firewalls, without any of the artificial limitations. It has successfully replaced every big name commercial firewall you can imagine in numerous installations around the world, including Check Point, Cisco PIX, Cisco ASA, Juniper, Sonicwall, Netgear, Watchguard, Astaro, and more.", diff --git a/gns3server/appliances/proxmox-mg.gns3a b/gns3server/appliances/proxmox-mg.gns3a index b1edf03b..588073da 100644 --- a/gns3server/appliances/proxmox-mg.gns3a +++ b/gns3server/appliances/proxmox-mg.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "577bdb36-4f56-421a-b716-52fe8df5699d", "name": "Proxmox MG", "category": "firewall", "description": "To ensure efficient email communication and business continuity, IT professionals depend on reliable spam and virus blocking software. With Proxmox Mail Gateway you get the job done.\n\nProxmox Mail Gateway helps you protect your business against all email threats like spam, viruses, phishing and trojans at the moment they emerge. The flexible architecture combined with the userfriendly, web-based management make it simple for you to control all incoming and outgoing emails. You maintain a professional email workflow and gain high business reputation as well as customer satisfaction.", diff --git a/gns3server/appliances/puppy-linux.gns3a b/gns3server/appliances/puppy-linux.gns3a index a0d6a435..e6bfca79 100644 --- a/gns3server/appliances/puppy-linux.gns3a +++ b/gns3server/appliances/puppy-linux.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "3c8c2c23-0f14-4dea-9e61-72afcfe1856c", "name": "Puppy Linux", "category": "guest", "description": "Puppy Linux is a unique family of Linux distributions meant for the home-user computers. It was originally created by Barry Kauler in 2003.", diff --git a/gns3server/appliances/python-go-perl-php.gns3a b/gns3server/appliances/python-go-perl-php.gns3a index 0e229881..6ab1298f 100644 --- a/gns3server/appliances/python-go-perl-php.gns3a +++ b/gns3server/appliances/python-go-perl-php.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "47ca3e1f-5a35-4631-b75d-010bd9452ca8", "name": "Python, Go, Perl, PHP", "category": "guest", "description": "Container with integrated Python 2 & 3, Perl, PHP, and PHP7.0 interpreters, and a Go compiler.", diff --git a/gns3server/appliances/raspian.gns3a b/gns3server/appliances/raspian.gns3a index b887d786..e3973693 100644 --- a/gns3server/appliances/raspian.gns3a +++ b/gns3server/appliances/raspian.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "597a01de-4b06-4f57-bd95-8c2e53f7dad6", "name": "Raspian", "category": "guest", "description": "Raspberry Pi Desktop comes pre-installed with plenty of software for education, programming and general use; including Python, Scratch, Sonic Pi, Java, and more. Appliance created to demonstrate new_appliance.py - read more at https://nextpertise.net.", diff --git a/gns3server/appliances/rhel.gns3a b/gns3server/appliances/rhel.gns3a index 22b3ab72..82b1e444 100644 --- a/gns3server/appliances/rhel.gns3a +++ b/gns3server/appliances/rhel.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "0c8708a6-ff48-489b-8e61-4c1b06c300e7", "name": "RHEL", "category": "guest", "description": "Red Hat Enterprise Linux Server provides core operating system functions and capabilities for application infrastructure.", diff --git a/gns3server/appliances/riverbed-steelhead-cx.gns3a b/gns3server/appliances/riverbed-steelhead-cx.gns3a deleted file mode 100644 index b17c6c0d..00000000 --- a/gns3server/appliances/riverbed-steelhead-cx.gns3a +++ /dev/null @@ -1,50 +0,0 @@ -{ - "name": "SteelHead CX 555V", - "category": "guest", - "description": "Riverbed SteelHead delivers not only best-in-class optimization - but essential visibility and control as companies transition to the Hybrid WAN. SteelHead CX for Virtual is available as a virtual solution on most major hypervisors including VMware vSphere, Microsoft Hyper-V and KVM. It accelerates the performance of all applications including on-premises, cloud, and SaaS across the hybrid enterprise for organizations that want to deliver the best end user experience - while leveraging the scalability and cost benefits of virtualization.\n\nSteelHead CX for Virtual uniquely delivers the best application performance along with application, network and end user visibility, and simplified control management of users, applications and networks based on business requirements and decisions.", - "vendor_name": "Riverbed Technology", - "vendor_url": "http://www.riverbed.com", - "documentation_url": "https://support.riverbed.com/content/support/software/steelhead/cx-appliance.html", - "product_name": "SteelHead CX 555V", - "registry_version": 3, - "status": "stable", - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "usage": "You don't need to run the installer script when using GNS3 VM. Uncompress the downloaded archive using this command: tar xzSf \nDefault credentials: admin / password", - "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 4, - "ram": 2048, - "hda_disk_interface": "virtio", - "hdb_disk_interface": "virtio", - "arch": "x86_64", - "console_type": "telnet", - "kvm": "require" - }, - "images": [ - { - "filename": "mgmt-9.2.0.img", - "version": "9.2.0", - "md5sum": "ca20a76b2556c0cd313d0b0de528e94d", - "filesize": 2555772928, - "download_url": "http://www.riverbed.com/products/steelhead/Free-90-day-Evaluation-SteelHead-CX-Virtual-Edition.html" - }, - { - "filename": "empty100G.qcow2", - "version": "1.0", - "md5sum": "1e6409a4523ada212dea2ebc50e50a65", - "filesize": 198656, - "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "direct_download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty100G.qcow2/download" - } - ], - "versions": [ - { - "name": "9.2.0", - "images": { - "hda_disk_image": "mgmt-9.2.0.img", - "hdb_disk_image": "empty100G.qcow2" - } - } - ] -} diff --git a/gns3server/appliances/riverbed-steelhead-ng-vcx.gns3a b/gns3server/appliances/riverbed-steelhead-ng-vcx.gns3a new file mode 100644 index 00000000..98413969 --- /dev/null +++ b/gns3server/appliances/riverbed-steelhead-ng-vcx.gns3a @@ -0,0 +1,68 @@ +{ + "appliance_id": "c21f6df8-64ab-4e24-921b-ec7f889ce32a", + "name": "SteelHead", + "category": "guest", + "description": "SteelHead is the Riverbed Accelerator", + "vendor_name": "Riverbed Technology", + "vendor_url": "http://www.riverbed.com", + "documentation_url": "https://github.com/riverbed/Riverbed-Community-Toolkit/tree/master/SteelHead/GNS3", + "product_name": "SteelHead", + "product_url": "https://support.riverbed.com/content/support/software/steelhead/cx-appliance.html", + "registry_version": 6, + "status": "stable", + "maintainer": "Riverbed Community", + "maintainer_email": "community@riverbed.com", + "usage": "Download the KVM image Next Generation Virtual SteelHead VCX Software Image (KVM) from https://support.riverbed.com/content/support/software/steelhead/cx-appliance.html\n Uncompress the .tgz archive using this command: tar xzSf \nDefault credentials: admin / password", + "symbol": "steelhead-vcx.png", + "first_port_name": "PRI", + "qemu": { + "adapter_type": "virtio-net-pci", + "adapters": 4, + "custom_adapters": [ + { + "adapter_number": 1, + "port_name": "AUX" + }, + { + "adapter_number": 2, + "port_name": "LAN0_0" + }, + { + "adapter_number": 3, + "port_name": "WAN0_0" + } + ], + "ram": 2048, + "hda_disk_interface": "virtio", + "hdb_disk_interface": "virtio", + "arch": "x86_64", + "console_type": "telnet", + "kvm": "require" + }, + "images": [ + { + "filename": "mgmt.qcow2", + "version": "9.12.0", + "md5sum": "0f45d7cfb75b5e7e915dd37136411580", + "filesize": 2381840384, + "download_url": "https://support.riverbed.com/content/support/software/steelhead/cx-appliance.html#software-alert" + }, + { + "filename": "empty100G.qcow2", + "version": "1.0", + "md5sum": "5d9fec18a980f13002028491259f158d", + "filesize": 198656, + "download_url": "https://github.com/riverbed/Riverbed-Community-Toolkit/raw/master/SteelHead/GNS3", + "direct_download_url": "https://github.com/riverbed/Riverbed-Community-Toolkit/raw/master/SteelHead/GNS3/empty100G.qcow2" + } + ], + "versions": [ + { + "name": "9.12.0", + "images": { + "hda_disk_image": "mgmt.qcow2", + "hdb_disk_image": "empty100G.qcow2" + } + } + ] +} diff --git a/gns3server/appliances/rockylinux.gns3a b/gns3server/appliances/rockylinux.gns3a index 789918d3..0f19236c 100644 --- a/gns3server/appliances/rockylinux.gns3a +++ b/gns3server/appliances/rockylinux.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "3c38885f-71c3-4d9c-976c-cf5515b1c875", "name": "RockyLinux", "category": "guest", "description": "Rocky Linux is a community enterprise operating system designed to be 100% bug-for-bug compatible with Red Hat Enterprise Linux (RHEL).", diff --git a/gns3server/appliances/security-onion.gns3a b/gns3server/appliances/security-onion.gns3a index 30130e39..abaf5003 100644 --- a/gns3server/appliances/security-onion.gns3a +++ b/gns3server/appliances/security-onion.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "8bf76d21-7a7b-4708-a415-5a7ace42db3f", "name": "Security Onion", "category": "guest", "description": "Security Onion is a Linux distro for intrusion detection, network security monitoring, and log management. It's based on Ubuntu and contains Snort, Suricata, Bro, OSSEC, Sguil, Squert, ELSA, Xplico, NetworkMiner, and many other security tools. The easy-to-use Setup wizard allows you to build an army of distributed sensors for your enterprise in minutes!", diff --git a/gns3server/appliances/smoothwall.gns3a b/gns3server/appliances/smoothwall.gns3a index 3f93db11..987cd791 100644 --- a/gns3server/appliances/smoothwall.gns3a +++ b/gns3server/appliances/smoothwall.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "0be28230-875d-4d61-8cd8-43ed66269535", "name": "Smoothwall Express", "category": "firewall", "description": "A Free firewall that includes its own security-hardened GNU/Linux operating system and an easy-to-use web interface.", diff --git a/gns3server/appliances/sophos-iview.gns3a b/gns3server/appliances/sophos-iview.gns3a index 7debb64e..28d131b1 100644 --- a/gns3server/appliances/sophos-iview.gns3a +++ b/gns3server/appliances/sophos-iview.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "270475da-094f-4479-8dd4-f2b9cb7a3949", "name": "Sophos iView", "category": "guest", "description": "Monitoring a distributed network across multiple locations can be a challenge. That's where Sophos iView can help. It provides you with an intelligent, uninterrupted view of your network from a single pane of glass. If you have multiple appliances, need consolidated reporting, or could just use help with log management or compliance, Sophos iView is the ideal solution.", diff --git a/gns3server/appliances/sophos-utm.gns3a b/gns3server/appliances/sophos-utm.gns3a index 5195f361..6bbc6cff 100644 --- a/gns3server/appliances/sophos-utm.gns3a +++ b/gns3server/appliances/sophos-utm.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "d297f2a0-f468-4c4d-a501-a065436712a1", "name": "Sophos UTM Home Edition", "category": "firewall", "description": "Sophos Free Home Use Firewall is a fully equipped software version of the Sophos UTM firewall, available at no cost for home users - no strings attached. It features full Network, Web, Mail and Web Application Security with VPN functionality and protects up to 50 IP addresses. The Sophos UTM Free Home Use firewall contains its own operating system and will overwrite all data on the computer during the installation process. Therefore, a separate, dedicated computer or VM is needed, which will change into a fully functional security appliance.", diff --git a/gns3server/appliances/sophos-xg.gns3a b/gns3server/appliances/sophos-xg.gns3a index cefeb5da..24f94f88 100644 --- a/gns3server/appliances/sophos-xg.gns3a +++ b/gns3server/appliances/sophos-xg.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "2370a587-20e7-468e-ace9-7bd61063aff4", "name": "Sophos XG Firewall", "category": "firewall", "description": "Sophos XG Firewall delivers the ultimate enterprise firewall performance, security, and control.\n\nFastpath packet optimization technology with up to 140Gbps throughput\nRevolutionary Security Heartbeat\u2122 for improved Advanced Threat Protection (ATP) and response\nPatented Layer-8 user identity control and visibility\nUnified App, Web, QoS, and IPS Policy simplifies management\nApp risk factor and user threat quotient monitors risk levels", diff --git a/gns3server/appliances/stonework.gns3a b/gns3server/appliances/stonework.gns3a index ae1d9644..1b103225 100644 --- a/gns3server/appliances/stonework.gns3a +++ b/gns3server/appliances/stonework.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "a8897d1f-5ab1-4075-b538-0acdb6785a07", "name": "StoneWork", "category": "router", "description": "StoneWork is VPP and Ligato based routing platform", diff --git a/gns3server/appliances/tacacs-gui.gns3a b/gns3server/appliances/tacacs-gui.gns3a index 1dcbe48c..3738523e 100644 --- a/gns3server/appliances/tacacs-gui.gns3a +++ b/gns3server/appliances/tacacs-gui.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "4e0796b3-2ce5-42a8-a1f2-e1f4beea02e1", "name": "TacacsGUI", "category": "guest", "description": "TacacsGUI Free Access Control Server for Your Network Devices. GUI for powerful daemon. The project of Alexey Mochalin, based on tacacs daemon by Marc Huber", diff --git a/gns3server/appliances/tinycore-linux.gns3a b/gns3server/appliances/tinycore-linux.gns3a index 17e4825b..ef1e23aa 100644 --- a/gns3server/appliances/tinycore-linux.gns3a +++ b/gns3server/appliances/tinycore-linux.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "ed6b9f98-7de2-4d61-a3ed-ad4c3e323ace", "name": "Tiny Core Linux", "category": "guest", "description": "Core Linux is a smaller variant of Tiny Core without a graphical desktop.\n\nIt provides a complete Linux system using only a few MiB.", diff --git a/gns3server/appliances/trendmicro-imsva.gns3a b/gns3server/appliances/trendmicro-imsva.gns3a index 4991b1bc..6520be66 100644 --- a/gns3server/appliances/trendmicro-imsva.gns3a +++ b/gns3server/appliances/trendmicro-imsva.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "16ddaaaf-575e-4baa-bcee-b5affd74bca0", "name": "IMS VA", "category": "firewall", "description": "Trend Micro InterScan Messaging Security stops email threats in the cloud with global threat intelligence, protects your data with data loss prevention and encryption, and identifies targeted email attacks,ransomware, and APTs as part of the Trend Micro Network Defense Solution. The hybrid SaaS deployment combines the privacy and control of an on-premises virtual appliance with the proactive protection of a cloud-based pre-filter service. It's the enterprise-level protection you need with the highest spam and phishing detection rates-consistently #1 in quarterly Opus One competitive tests since 2011.", diff --git a/gns3server/appliances/trendmicro-iwsva.gns3a b/gns3server/appliances/trendmicro-iwsva.gns3a index 13fd2108..17bd1161 100644 --- a/gns3server/appliances/trendmicro-iwsva.gns3a +++ b/gns3server/appliances/trendmicro-iwsva.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "8a0e304f-b6fe-4040-8c51-4e2d1310ff71", "name": "IWS VA", "category": "firewall", "description": "Trend Micro InterScan Web Security Virtual Appliance is a secure web gateway that combines application control with zero-day exploit detection, advanced anti-malware and ransomware scanning, real-time web reputation, and flexible URL filtering to provide superior Internet threat protection.", diff --git a/gns3server/appliances/turnkey-wordpress.gns3a b/gns3server/appliances/turnkey-wordpress.gns3a index 978f49fb..377b6bd4 100644 --- a/gns3server/appliances/turnkey-wordpress.gns3a +++ b/gns3server/appliances/turnkey-wordpress.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "130cb709-b000-471c-afe6-11cbaaed4bbc", "name": "WordPress", "category": "guest", "description": "WordPress is a state-of-the-art publishing platform with a focus on aesthetics, web standards, and usability. It is one of the worlds most popular blog publishing applications, includes tons of powerful core functionality, extendable via literally thousands of plugins, and supports full theming. This appliance includes all the standard features in TurnKey Core too.", diff --git a/gns3server/appliances/ubuntu-cloud.gns3a b/gns3server/appliances/ubuntu-cloud.gns3a index 4fbc7ae2..c31af598 100644 --- a/gns3server/appliances/ubuntu-cloud.gns3a +++ b/gns3server/appliances/ubuntu-cloud.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "46322c6c-10ba-4c6c-823c-12b3ff8b6939", "name": "Ubuntu Cloud Guest", "category": "guest", "description": "The term 'Ubuntu Cloud Guest' refers to the Official Ubuntu images that are available at http://cloud-images.ubuntu.com . These images are built by Canonical. They are then registered on EC2, and compressed tarfiles are made also available for download. For using those images on a public cloud such as Amazon EC2, you simply choose an image and launch it. To use those images on a private cloud, or to run the image on a local hypervisor (such as KVM) you would need to download those images and either publish them to your private cloud, or launch them directly on a hypervisor. The following sections explain in more details how to perform each of those actions", diff --git a/gns3server/appliances/ubuntu-docker.gns3a b/gns3server/appliances/ubuntu-docker.gns3a index 9a9bbc20..61d218e0 100644 --- a/gns3server/appliances/ubuntu-docker.gns3a +++ b/gns3server/appliances/ubuntu-docker.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "da783400-a388-4cb2-8299-f916e3a1cc10", "name": "Ubuntu Docker Guest", "category": "guest", "description": "Ubuntu is a Debian-based Linux operating system, with Unity as its default desktop environment. It is based on free software and named after the Southern African philosophy of ubuntu (literally, \"human-ness\"), which often is translated as \"humanity towards others\" or \"the belief in a universal bond of sharing that connects all humanity\".", diff --git a/gns3server/appliances/ubuntu-gui.gns3a b/gns3server/appliances/ubuntu-gui.gns3a index c551da7c..5d36b2a1 100644 --- a/gns3server/appliances/ubuntu-gui.gns3a +++ b/gns3server/appliances/ubuntu-gui.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "72623124-94a5-4911-b818-d606fb37bdf0", "name": "Ubuntu Desktop Guest", "category": "guest", "description": "Ubuntu is a full-featured Linux operating system which is based on Debian distribution and freely available with both community and professional support, it comes with Unity as its default desktop environment. There are other flavors of Ubuntu available with other desktops as default like Ubuntu Gnome, Lubuntu, Xubuntu, and so on. A tightly-integrated selection of excellent applications is included, and an incredible variety of add-on software is just a few clicks away. A default installation of Ubuntu contains a wide range of software that includes LibreOffice, Firefox, Empathy, Transmission, etc.", diff --git a/gns3server/appliances/ubuntu-server.gns3a b/gns3server/appliances/ubuntu-server.gns3a index 5013a2dc..13cabbed 100644 --- a/gns3server/appliances/ubuntu-server.gns3a +++ b/gns3server/appliances/ubuntu-server.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "d2a23e69-9e92-4c3f-83c8-8caa1aa58ece", "name": "Ubuntu Server", "category": "guest", "description": "This is a custom Ubuntu server which comes with Canonical security updates, Xorg and Telnetd", diff --git a/gns3server/appliances/untangle.gns3a b/gns3server/appliances/untangle.gns3a index c17de990..38f6b1d1 100644 --- a/gns3server/appliances/untangle.gns3a +++ b/gns3server/appliances/untangle.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "7f1e028f-0e1d-490c-974a-cadbe3402a02", "name": "Untangle NG", "category": "firewall", "description": "Untangle's NG Firewall enables you to quickly and easily create the network policies that deliver the perfect balance between security and productivity. Untangle combines Unified Threat Management (UTM)-to address all of the key network threats-with policy management tools that enable you to define access and control by individuals, groups or company-wide. And with industry-leading reports, you'll have complete visibility into and control over everything that's happening on your network.", diff --git a/gns3server/appliances/viptela-edge-genericx86-64.gns3a b/gns3server/appliances/viptela-edge-genericx86-64.gns3a index a79151d1..34589774 100644 --- a/gns3server/appliances/viptela-edge-genericx86-64.gns3a +++ b/gns3server/appliances/viptela-edge-genericx86-64.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "939594b1-7d88-4351-925e-5623bdc401ff", "name": "vEdgeCloud", "category": "router", "description": "vEdgeCloud", diff --git a/gns3server/appliances/viptela-smart-genericx86-64.gns3a b/gns3server/appliances/viptela-smart-genericx86-64.gns3a index 8e3999be..040cd6f4 100644 --- a/gns3server/appliances/viptela-smart-genericx86-64.gns3a +++ b/gns3server/appliances/viptela-smart-genericx86-64.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "cd7469ea-f082-4fba-894f-e420012de9b8", "name": "vSmart", "category": "router", "description": "vSmart", diff --git a/gns3server/appliances/viptela-vmanage-genericx86-64.gns3a b/gns3server/appliances/viptela-vmanage-genericx86-64.gns3a index 4f7b9ef6..ad94b338 100644 --- a/gns3server/appliances/viptela-vmanage-genericx86-64.gns3a +++ b/gns3server/appliances/viptela-vmanage-genericx86-64.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "5e6984d9-180a-41db-b822-a9d38d5cd58a", "name": "vManage", "category": "router", "description": "vManage", diff --git a/gns3server/appliances/vpp.gns3a b/gns3server/appliances/vpp.gns3a index 95b8682a..c18af566 100644 --- a/gns3server/appliances/vpp.gns3a +++ b/gns3server/appliances/vpp.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "f9a951fe-cafd-4b31-8c83-daef4709943e", "name": "VPP", "category": "router", "description": "Vector Packet Processing (VPP) platform", diff --git a/gns3server/appliances/vrin.gns3a b/gns3server/appliances/vrin.gns3a index da77e45f..830e7ea7 100644 --- a/gns3server/appliances/vrin.gns3a +++ b/gns3server/appliances/vrin.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "b91a011d-e975-45b4-9d7a-b0d296f8541f", "name": "vRIN", "category": "guest", "description": "vRIN is a VM appliance capable to inject high number of routes into a network. It was tested on GNS3 topologies using VirtualBox and Qemu with up to 1M BGP routes. Runs Quagga. Supported protocols: BGP (IPv4/6), OSPF, OSPFv3, RIP v2, RIPng", diff --git a/gns3server/appliances/vyos.gns3a b/gns3server/appliances/vyos.gns3a index aba9a41d..7494c070 100644 --- a/gns3server/appliances/vyos.gns3a +++ b/gns3server/appliances/vyos.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "f82b74c4-0f30-456f-a582-63daca528502", "name": "VyOS", "category": "router", "description": "VyOS is a community fork of Vyatta, a Linux-based network operating system that provides software-based network routing, firewall, and VPN functionality. VyOS has a subscription LTS version and a community rolling release. The latest version in this appliance is the monthly snapshot of the rolling release track.", @@ -11,7 +12,7 @@ "status": "stable", "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "usage": "Default username/password is vyos/vyos.\n\nAt first boot of versions 1.1.x/1.2.x the router will start from the cdrom. Login and then type \"install image\" and follow the instructions.", + "usage": "Default username/password is vyos/vyos.\n\nAt first boot the router will start from the cdrom. Login and then type \"install image\" and follow the instructions.", "symbol": "vyos.svg", "port_name_format": "eth{0}", "qemu": { @@ -26,12 +27,12 @@ }, "images": [ { - "filename": "vyos-1.3.0-rc5-amd64.qcow2", - "version": "1.3.0-rc5", - "md5sum": "dd704f59afc0fccdf601cc750bf2c438", - "filesize": 361955328, - "download_url": "https://www.b-ehlers.de/GNS3/images/", - "direct_download_url": "https://www.b-ehlers.de/GNS3/images/vyos-1.3.0-rc5-amd64.qcow2" + "filename": "vyos-1.3.0-epa1-amd64.iso", + "version": "1.3.0-epa1", + "md5sum": "a2aaa5bd3bc5827909d07a18a9de80a7", + "filesize": 331350016, + "download_url": "https://vyos.net/get/snapshots/", + "direct_download_url": "https://s3.amazonaws.com/s3-us.vyos.io/snapshot/vyos-1.3.0-epa1/generic-iso/vyos-1.3.0-epa1-amd64.iso" }, { "filename": "vyos-1.2.8-amd64.iso", @@ -66,9 +67,10 @@ ], "versions": [ { - "name": "1.3.0-rc5", + "name": "1.3.0-epa1", "images": { - "hda_disk_image": "vyos-1.3.0-rc5-amd64.qcow2" + "hda_disk_image": "empty8G.qcow2", + "cdrom_image": "vyos-1.3.0-epa1-amd64.iso" } }, { diff --git a/gns3server/appliances/watchguard-fireboxv.gns3a b/gns3server/appliances/watchguard-fireboxv.gns3a index 929852c0..c6ddd2f2 100644 --- a/gns3server/appliances/watchguard-fireboxv.gns3a +++ b/gns3server/appliances/watchguard-fireboxv.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "dee2b360-e1f4-487f-bd2f-2296f7167543", "name": "WatchGuard", "category": "firewall", "description": "Organizations of all sizes are turning to virtualization to reduce costs and increase the efficiency, availability, and flexibility of their IT resources. But virtualization comes at a cost. Virtual environments are complex to manage and vulnerable to security threats. IT must be prepared. Now applications can be secured, resources can be maximized and your IT department can reap the rewards of having a single, unified management system - without a security risk in sight. WatchGuard FireboxV brings best-in-class network security to the world of virtualization. With real-time monitoring, multi-WAN support and scalable solutions to fit any-sized business, your virtual environments can be just as secure as your physical one.", diff --git a/gns3server/appliances/watchguard-xtmv.gns3a b/gns3server/appliances/watchguard-xtmv.gns3a index e0d6d3ef..62451a59 100644 --- a/gns3server/appliances/watchguard-xtmv.gns3a +++ b/gns3server/appliances/watchguard-xtmv.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "816cedad-04ae-46e5-840d-20c2a50b6ba5", "name": "WatchGuard", "category": "firewall", "description": "Organizations of all sizes are turning to virtualization to reduce costs and increase the efficiency, availability, and flexibility of their IT resources. But virtualization comes at a cost. Virtual environments are complex to manage and vulnerable to security threats. IT must be prepared. Now applications can be secured, resources can be maximized and your IT department can reap the rewards of having a single, unified management system - without a security risk in sight. WatchGuard XTMv brings best-in-class network security to the world of virtualization. With real-time monitoring, multi-WAN support and scalable solutions to fit any-sized business, your virtual environments can be just as secure as your physical one.", diff --git a/gns3server/appliances/webterm.gns3a b/gns3server/appliances/webterm.gns3a index de999278..ffb71d7a 100644 --- a/gns3server/appliances/webterm.gns3a +++ b/gns3server/appliances/webterm.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "42bf9ee2-7278-4346-988a-0b6292198d4f", "name": "webterm", "category": "guest", "description": "webterm is a debian based networking toolbox.\nIt contains the firefox web browser plus the following utilities: net-tools, iproute2, ping, traceroute, curl, host, iperf3, mtr, socat, ssh client, tcpdump, ab(apache benchmark) and the multicast testing tools msend/mreceive.", diff --git a/gns3server/appliances/windows-xp+ie.gns3a b/gns3server/appliances/windows-xp+ie.gns3a index f5aeb0c6..eedc0de2 100644 --- a/gns3server/appliances/windows-xp+ie.gns3a +++ b/gns3server/appliances/windows-xp+ie.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "3976f732-7d50-4dba-b5f7-e2f2c17129eb", "name": "Windows", "category": "guest", "description": "Microsoft Windows XP is a graphical operating system developed, marketed, and sold by Microsoft.\n\nMicrosoft has released time limited VMs for testing Internet Explorer.", diff --git a/gns3server/appliances/windows.gns3a b/gns3server/appliances/windows.gns3a index fb3f5a0c..98c41571 100644 --- a/gns3server/appliances/windows.gns3a +++ b/gns3server/appliances/windows.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "9101a9be-ecc5-49ae-988c-735f5d2125de", "name": "Windows", "category": "guest", "description": "Microsoft Windows, or simply Windows, is a metafamily of graphical operating systems developed, marketed, and sold by Microsoft. It consists of several families of operating systems, each of which cater to a certain sector of the computing industry with the OS typically associated with IBM PC compatible architecture.", diff --git a/gns3server/appliances/windows_server.gns3a b/gns3server/appliances/windows_server.gns3a index b575b72b..153391ba 100644 --- a/gns3server/appliances/windows_server.gns3a +++ b/gns3server/appliances/windows_server.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "2b98950c-4b0c-450c-acf8-caf923ac2b28", "name": "Windows Server", "category": "guest", "description": "Microsoft Windows, or simply Windows, is a metafamily of graphical operating systems developed, marketed, and sold by Microsoft. It consists of several families of operating systems, each of which cater to a certain sector of the computing industry with the OS typically associated with IBM PC compatible architecture.", diff --git a/gns3server/appliances/zentyal-server.gns3a b/gns3server/appliances/zentyal-server.gns3a index d451a6f5..b173b812 100644 --- a/gns3server/appliances/zentyal-server.gns3a +++ b/gns3server/appliances/zentyal-server.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "4f5edc3d-f890-4d22-a17d-608c0dba4002", "name": "Zentyal Server", "category": "guest", "description": "The on-premise Mail and Directory server. Native compatibility with Microsoft Active Directory. You can control your IT infrastructure from a single point of user management, regardless of the different offices and locations your business has. True Microsoft Outlook compatibility. Your users can continue using their favorite email clients, without any service interruptions and without having to install any plug-in or connector.", diff --git a/gns3server/appliances/zeroshell.gns3a b/gns3server/appliances/zeroshell.gns3a index f62cfa10..e34dc337 100644 --- a/gns3server/appliances/zeroshell.gns3a +++ b/gns3server/appliances/zeroshell.gns3a @@ -1,4 +1,5 @@ { + "appliance_id": "a210781e-471a-4628-8f43-83941c3909a6", "name": "ZeroShell", "category": "router", "description": "Zeroshell is a Linux distribution for servers and embedded devices aimed at providing the main network services a LAN requires. It is available in the form of Live CD or Compact Flash image and you can configure and administer it using your web browser.", diff --git a/gns3server/compute/base_manager.py b/gns3server/compute/base_manager.py index 82f206d9..1d8c78e7 100644 --- a/gns3server/compute/base_manager.py +++ b/gns3server/compute/base_manager.py @@ -475,8 +475,7 @@ class BaseManager: for root, dirs, files in os.walk(directory): for file in files: - # If filename is the same - if s[1] == file and (s[0] == '' or os.path.basename(s[0]) == os.path.basename(root)): + if s[1] == file and (s[0] == '' or root == os.path.join(directory, s[0])): path = os.path.normpath(os.path.join(root, s[1])) if os.path.exists(path): return path diff --git a/gns3server/compute/base_node.py b/gns3server/compute/base_node.py index 71ad1a2c..cfa147a8 100644 --- a/gns3server/compute/base_node.py +++ b/gns3server/compute/base_node.py @@ -974,7 +974,7 @@ class BaseNode: """ available_ram = int(psutil.virtual_memory().available / (1024 * 1024)) - percentage_left = psutil.virtual_memory().percent + percentage_left = 100 - psutil.virtual_memory().percent if requested_ram > available_ram: message = '"{}" requires {}MB of RAM to run but there is only {}MB - {}% of RAM left on "{}"'.format( self.name, requested_ram, available_ram, percentage_left, platform.node() diff --git a/gns3server/compute/builtin/nodes/nat.py b/gns3server/compute/builtin/nodes/nat.py index 21deca92..29d17959 100644 --- a/gns3server/compute/builtin/nodes/nat.py +++ b/gns3server/compute/builtin/nodes/nat.py @@ -36,10 +36,16 @@ class Nat(Cloud): def __init__(self, name, node_id, project, manager, ports=None): + allowed_interfaces = Config.instance().settings.Server.allowed_interfaces + if allowed_interfaces: + allowed_interfaces = allowed_interfaces.split(',') if sys.platform.startswith("linux"): nat_interface = Config.instance().settings.Server.default_nat_interface if not nat_interface: nat_interface = "virbr0" + if allowed_interfaces and nat_interface not in allowed_interfaces: + raise NodeError("NAT interface {} is not allowed be used on this server. " + "Please check the server configuration file.".format(nat_interface)) if nat_interface not in [interface["name"] for interface in gns3server.utils.interfaces.interfaces()]: raise NodeError(f"NAT interface {nat_interface} is missing, please install libvirt") interface = nat_interface @@ -47,6 +53,9 @@ class Nat(Cloud): nat_interface = Config.instance().settings.Server.default_nat_interface if not nat_interface: nat_interface = "vmnet8" + if allowed_interfaces and nat_interface not in allowed_interfaces: + raise NodeError("NAT interface {} is not allowed be used on this server. " + "Please check the server configuration file.".format(nat_interface)) interfaces = list( filter( lambda x: nat_interface in x.lower(), diff --git a/gns3server/compute/docker/docker_vm.py b/gns3server/compute/docker/docker_vm.py index 55a38e0c..29afbc9d 100644 --- a/gns3server/compute/docker/docker_vm.py +++ b/gns3server/compute/docker/docker_vm.py @@ -574,14 +574,9 @@ class DockerVM(BaseNode): # https://github.com/GNS3/gns3-gui/issues/1039 try: process = await asyncio.subprocess.create_subprocess_exec( - "docker", - "exec", - "-i", - self._cid, - "/gns3/bin/busybox", "script", "-qfc", - "while true; do TERM=vt100 /gns3/bin/busybox sh; done", + f"docker exec -i -t {self._cid} /gns3/bin/busybox sh -c 'while true; do TERM=vt100 /gns3/bin/busybox sh; done'", "/dev/null", stdout=asyncio.subprocess.PIPE, stderr=asyncio.subprocess.STDOUT, diff --git a/gns3server/compute/docker/resources/bin/busybox b/gns3server/compute/docker/resources/bin/busybox deleted file mode 100755 index 68ebef5e..00000000 Binary files a/gns3server/compute/docker/resources/bin/busybox and /dev/null differ diff --git a/gns3server/compute/docker/resources/bin/udhcpc b/gns3server/compute/docker/resources/bin/udhcpc new file mode 100644 index 00000000..16c064d0 --- /dev/null +++ b/gns3server/compute/docker/resources/bin/udhcpc @@ -0,0 +1,15 @@ +#!/gns3/bin/busybox sh + +SCRIPT="/gns3/etc/udhcpc/default.script" + +if [ "$(cat "/proc/$PPID/comm" 2>/dev/null)" = ifup ]; then + # remove "-n" argument + for arg do + shift + [ "$arg" = "-n" ] || set -- "$@" "$arg" + done + # add default parameters + set -- -t 3 -T 2 -A 1 -b "$@" +fi + +exec /tmp/gns3/bin/udhcpc -s "$SCRIPT" "$@" diff --git a/gns3server/compute/qemu/__init__.py b/gns3server/compute/qemu/__init__.py index 2993ddbf..2a0c48c3 100644 --- a/gns3server/compute/qemu/__init__.py +++ b/gns3server/compute/qemu/__init__.py @@ -152,8 +152,6 @@ class Qemu(BaseManager): log.debug(f"Searching for Qemu binaries in '{path}'") try: for f in os.listdir(path): - if f.endswith("-spice"): - continue if ( (f.startswith("qemu-system") or f.startswith("qemu-kvm") or f == "qemu" or f == "qemu.exe") and os.access(os.path.join(path, f), os.X_OK) diff --git a/gns3server/compute/qemu/qemu_vm.py b/gns3server/compute/qemu/qemu_vm.py index 3077b973..adec97db 100644 --- a/gns3server/compute/qemu/qemu_vm.py +++ b/gns3server/compute/qemu/qemu_vm.py @@ -146,7 +146,6 @@ class QemuVM(BaseNode): self._initrd = "" self._kernel_image = "" self._kernel_command_line = "" - self._legacy_networking = False self._replicate_network_connection_state = True self._create_config_disk = False self._on_close = "power_off" @@ -679,30 +678,6 @@ class QemuVM(BaseNode): ) ) - @property - def legacy_networking(self): - """ - Returns either QEMU legacy networking commands are used. - - :returns: boolean - """ - - return self._legacy_networking - - @legacy_networking.setter - def legacy_networking(self, legacy_networking): - """ - Sets either QEMU legacy networking commands are used. - - :param legacy_networking: boolean - """ - - if legacy_networking: - log.info(f'QEMU VM "{self._name}" [{self._id}] has enabled legacy networking') - else: - log.info(f'QEMU VM "{self._name}" [{self._id}] has disabled legacy networking') - self._legacy_networking = legacy_networking - @property def replicate_network_connection_state(self): """ @@ -1832,23 +1807,16 @@ class QemuVM(BaseNode): def _get_qemu_img(self): """ Search the qemu-img binary in the same binary of the qemu binary - for avoiding version incompatibility. + to avoid version incompatibility. :returns: qemu-img path or raise an error """ - qemu_img_path = "" + qemu_path_dir = os.path.dirname(self.qemu_path) - try: - for f in os.listdir(qemu_path_dir): - if f.startswith("qemu-img"): - qemu_img_path = os.path.join(qemu_path_dir, f) - except OSError as e: - raise QemuError(f"Error while looking for qemu-img in {qemu_path_dir}: {e}") - - if not qemu_img_path: - raise QemuError(f"Could not find qemu-img in {qemu_path_dir}") - - return qemu_img_path + qemu_image_path = shutil.which("qemu-img", path=qemu_path_dir) + if qemu_image_path: + return qemu_image_path + raise QemuError(f"Could not find qemu-img in {qemu_path_dir}") async def _qemu_img_exec(self, command): @@ -1864,27 +1832,36 @@ class QemuVM(BaseNode): log.info(f"{self._get_qemu_img()} returned with {retcode}") return retcode + async def _find_disk_file_format(self, disk): + + qemu_img_path = self._get_qemu_img() + try: + output = await subprocess_check_output(qemu_img_path, "info", "--output=json", disk) + except subprocess.SubprocessError as e: + raise QemuError(f"Error received while checking Qemu disk format: {e}") + if output: + try: + json_data = json.loads(output) + except ValueError as e: + raise QemuError(f"Invalid JSON data returned by qemu-img: {e}") + return json_data.get("format") + async def _create_linked_clone(self, disk_name, disk_image, disk): + try: qemu_img_path = self._get_qemu_img() - command = [qemu_img_path, "create", "-o", f"backing_file={disk_image}", "-f", "qcow2", disk] - try: - base_qcow2 = Qcow2(disk_image) - if base_qcow2.crypt_method: - # Workaround for https://gitlab.com/qemu-project/qemu/-/issues/441 - # Also embed a secret name so it doesn't have to be passed to qemu -drive ... - options = { - "encrypt.key-secret": os.path.basename(disk_image), - "driver": "qcow2", - "file": { - "driver": "file", - "filename": disk_image, - }, - } - command = [qemu_img_path, "create", "-b", "json:"+json.dumps(options, separators=(',', ':')), - "-f", "qcow2", "-u", disk, str(base_qcow2.size)] - except Qcow2Error: - pass # non-qcow2 base images are acceptable (e.g. vmdk, raw image) + backing_file_format = await self._find_disk_file_format(disk_image) + if not backing_file_format: + raise QemuError(f"Could not detect format for disk image: {disk_image}") + backing_options, base_qcow2 = Qcow2.backing_options(disk_image) + if base_qcow2 and base_qcow2.crypt_method: + # Workaround for https://gitlab.com/qemu-project/qemu/-/issues/441 + # (we have to pass -u and the size). Also embed secret name. + command = [qemu_img_path, "create", "-b", backing_options, + "-F", backing_file_format, "-f", "qcow2", "-u", disk, str(base_qcow2.size)] + else: + command = [qemu_img_path, "create", "-o", "backing_file={}".format(disk_image), + "-F", backing_file_format, "-f", "qcow2", disk] retcode = await self._qemu_img_exec(command) if retcode: @@ -2068,19 +2045,14 @@ class QemuVM(BaseNode): if retcode == 3: # image has leaked clusters, but is not corrupted, let's try to fix it log.warning(f"Qemu image {disk_image} has leaked clusters") - if (await self._qemu_img_exec([qemu_img_path, "check", "-r", "leaks", f"{disk_image}"])) == 3: - self.project.emit( - "log.warning", - {"message": f"Qemu image '{disk_image}' has leaked clusters and could not be fixed"}, - ) + if await self._qemu_img_exec([qemu_img_path, "check", "-r", "leaks", "{}".format(disk_image)]) == 3: + self.project.emit("log.warning", {"message": "Qemu image '{}' has leaked clusters and could not be fixed".format(disk_image)}) elif retcode == 2: # image is corrupted, let's try to fix it log.warning(f"Qemu image {disk_image} is corrupted") - if (await self._qemu_img_exec([qemu_img_path, "check", "-r", "all", f"{disk_image}"])) == 2: - self.project.emit( - "log.warning", - {"message": f"Qemu image '{disk_image}' is corrupted and could not be fixed"}, - ) + if await self._qemu_img_exec([qemu_img_path, "check", "-r", "all", "{}".format(disk_image)]) == 2: + self.project.emit("log.warning", {"message": "Qemu image '{}' is corrupted and could not be fixed".format(disk_image)}) + # ignore retcode == 1. One reason is that the image is encrypted and there is no encrypt.key-secret available except (OSError, subprocess.SubprocessError) as e: stdout = self.read_qemu_img_stdout() raise QemuError(f"Could not check '{disk_name}' disk image: {e}\n{stdout}") @@ -2091,10 +2063,16 @@ class QemuVM(BaseNode): # create the disk await self._create_linked_clone(disk_name, disk_image, disk) else: - # The disk exists we check if the clone works + backing_file_format = await self._find_disk_file_format(disk_image) + if not backing_file_format: + raise QemuError("Could not detect format for disk image: {}".format(disk_image)) + # Rebase the image. This is in case the base image moved to a different directory, + # which will be the case if we imported a portable project. This uses + # get_abs_image_path(hdX_disk_image) and ignores the old base path embedded + # in the qcow2 file itself. try: qcow2 = Qcow2(disk) - await qcow2.validate(qemu_img_path) + await qcow2.rebase(qemu_img_path, disk_image, backing_file_format) except (Qcow2Error, OSError) as e: raise QemuError(f"Could not use qcow2 disk image '{disk_image}' for {disk_name} {e}") @@ -2205,16 +2183,6 @@ class QemuVM(BaseNode): ["-net", "none"] ) # we do not want any user networking back-end if no adapter is connected. - patched_qemu = False - if self._legacy_networking: - qemu_version = await self.manager.get_qemu_version(self.qemu_path) - if qemu_version: - if parse_version(qemu_version) >= parse_version("2.9.0"): - raise QemuError("Qemu version 2.9.0 and later doesn't support legacy networking mode") - if parse_version(qemu_version) < parse_version("1.1.0"): - # this is a patched Qemu if version is below 1.1.0 - patched_qemu = True - # Each 32 PCI device we need to add a PCI bridge with max 9 bridges pci_devices = 4 + len(self._ethernet_adapters) # 4 PCI devices are use by default by qemu pci_bridges = math.floor(pci_devices / 32) @@ -2241,72 +2209,40 @@ class QemuVM(BaseNode): if custom_mac_address: mac = int_to_macaddress(macaddress_to_int(custom_mac_address)) - if self._legacy_networking: - # legacy QEMU networking syntax (-net) - if nio: - network_options.extend(["-net", f"nic,vlan={adapter_number},macaddr={mac},model={adapter_type}"]) - if isinstance(nio, NIOUDP): - if patched_qemu: - # use patched Qemu syntax - network_options.extend( - [ - "-net", - "udp,vlan={},name=gns3-{},sport={},dport={},daddr={}".format( - adapter_number, adapter_number, nio.lport, nio.rport, nio.rhost - ), - ] - ) - else: - # use UDP tunnel support added in Qemu 1.1.0 - network_options.extend( - [ - "-net", - "socket,vlan={},name=gns3-{},udp={}:{},localaddr={}:{}".format( - adapter_number, adapter_number, nio.rhost, nio.rport, "127.0.0.1", nio.lport - ), - ] - ) - elif isinstance(nio, NIOTAP): - network_options.extend(["-net", f"tap,name=gns3-{adapter_number},ifname={nio.tap_device}"]) - else: - network_options.extend(["-net", f"nic,vlan={adapter_number},macaddr={mac},model={adapter_type}"]) - + device_string = f"{adapter_type},mac={mac}" + bridge_id = math.floor(pci_device_id / 32) + if bridge_id > 0: + if pci_bridges_created < bridge_id: + network_options.extend(["-device", f"i82801b11-bridge,id=dmi_pci_bridge{bridge_id}"]) + network_options.extend( + [ + "-device", + "pci-bridge,id=pci-bridge{bridge_id},bus=dmi_pci_bridge{bridge_id},chassis_nr=0x1,addr=0x{bridge_id},shpc=off".format( + bridge_id=bridge_id + ), + ] + ) + pci_bridges_created += 1 + addr = pci_device_id % 32 + device_string = f"{device_string},bus=pci-bridge{bridge_id},addr=0x{addr:02x}" + pci_device_id += 1 + if nio: + network_options.extend(["-device", f"{device_string},netdev=gns3-{adapter_number}"]) + if isinstance(nio, NIOUDP): + network_options.extend( + [ + "-netdev", + "socket,id=gns3-{},udp={}:{},localaddr={}:{}".format( + adapter_number, nio.rhost, nio.rport, "127.0.0.1", nio.lport + ), + ] + ) + elif isinstance(nio, NIOTAP): + network_options.extend( + ["-netdev", f"tap,id=gns3-{adapter_number},ifname={nio.tap_device},script=no,downscript=no"] + ) else: - # newer QEMU networking syntax - device_string = f"{adapter_type},mac={mac}" - bridge_id = math.floor(pci_device_id / 32) - if bridge_id > 0: - if pci_bridges_created < bridge_id: - network_options.extend(["-device", f"i82801b11-bridge,id=dmi_pci_bridge{bridge_id}"]) - network_options.extend( - [ - "-device", - "pci-bridge,id=pci-bridge{bridge_id},bus=dmi_pci_bridge{bridge_id},chassis_nr=0x1,addr=0x{bridge_id},shpc=off".format( - bridge_id=bridge_id - ), - ] - ) - pci_bridges_created += 1 - addr = pci_device_id % 32 - device_string = f"{device_string},bus=pci-bridge{bridge_id},addr=0x{addr:02x}" - pci_device_id += 1 - if nio: - network_options.extend(["-device", f"{device_string},netdev=gns3-{adapter_number}"]) - if isinstance(nio, NIOUDP): - network_options.extend( - [ - "-netdev", - "socket,id=gns3-{},udp={}:{},localaddr={}:{}".format( - adapter_number, nio.rhost, nio.rport, "127.0.0.1", nio.lport - ), - ] - ) - elif isinstance(nio, NIOTAP): - network_options.extend( - ["-netdev", f"tap,id=gns3-{adapter_number},ifname={nio.tap_device},script=no,downscript=no"] - ) - else: - network_options.extend(["-device", device_string]) + network_options.extend(["-device", device_string]) return network_options diff --git a/gns3server/compute/qemu/utils/qcow2.py b/gns3server/compute/qemu/utils/qcow2.py index 52269f36..60fdc972 100644 --- a/gns3server/compute/qemu/utils/qcow2.py +++ b/gns3server/compute/qemu/utils/qcow2.py @@ -15,6 +15,7 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . +import json import os import asyncio import struct @@ -88,31 +89,50 @@ class Qcow2: return None return path - async def rebase(self, qemu_img, base_image): + @staticmethod + def backing_options(base_image): + """ + If the base_image is encrypted qcow2, return options for the upper layer + which include a secret name (equal to the basename) + + :param base_image: Path to the base file (which may or may not be qcow2) + + :returns: (base image string, Qcow2 object representing base image or None) + """ + + try: + base_qcow2 = Qcow2(base_image) + if base_qcow2.crypt_method: + # Embed a secret name so it doesn't have to be passed to qemu -drive ... + options = { + "encrypt.key-secret": os.path.basename(base_image), + "driver": "qcow2", + "file": { + "driver": "file", + "filename": base_image, + }, + } + return ("json:"+json.dumps(options, separators=(',', ':')), base_qcow2) + else: + return (base_image, base_qcow2) + except Qcow2Error: + return (base_image, None) # non-qcow2 base images are acceptable (e.g. vmdk, raw image) + + async def rebase(self, qemu_img, base_image, backing_file_format): """ Rebase a linked clone in order to use the correct disk :param qemu_img: Path to the qemu-img binary :param base_image: Path to the base image + :param backing_file_format: File format of the base image """ if not os.path.exists(base_image): raise FileNotFoundError(base_image) - command = [qemu_img, "rebase", "-u", "-b", base_image, self._path] + backing_options, _ = Qcow2.backing_options(base_image) + command = [qemu_img, "rebase", "-u", "-b", backing_options, "-F", backing_file_format, self._path] process = await asyncio.create_subprocess_exec(*command) retcode = await process.wait() if retcode != 0: raise Qcow2Error("Could not rebase the image") self._reload() - - async def validate(self, qemu_img): - """ - Run qemu-img info to validate the file and its backing images - - :param qemu_img: Path to the qemu-img binary - """ - command = [qemu_img, "info", "--backing-chain", self._path] - process = await asyncio.create_subprocess_exec(*command) - retcode = await process.wait() - if retcode != 0: - raise Qcow2Error("Could not validate the image") diff --git a/gns3server/controller/appliance.py b/gns3server/controller/appliance.py index 7913f0ab..9e93ee42 100644 --- a/gns3server/controller/appliance.py +++ b/gns3server/controller/appliance.py @@ -16,7 +16,6 @@ # along with this program. If not, see . import copy -import uuid import logging log = logging.getLogger(__name__) @@ -24,19 +23,12 @@ log = logging.getLogger(__name__) class Appliance: - def __init__(self, appliance_id, data, builtin=True): + def __init__(self, path, data, builtin=True): - if appliance_id is None: - self._id = str(uuid.uuid4()) - elif isinstance(appliance_id, uuid.UUID): - self._id = str(appliance_id) - else: - self._id = appliance_id self._data = data.copy() + self._id = self._data.get("appliance_id") + self._path = path self._builtin = builtin - if "appliance_id" in self._data: - del self._data["appliance_id"] - if self.status != "broken": log.debug(f'Appliance "{self.name}" [{self._id}] loaded') @@ -44,6 +36,10 @@ class Appliance: def id(self): return self._id + @property + def path(self): + return self._path + @property def status(self): return self._data["status"] @@ -56,14 +52,35 @@ class Appliance: def name(self): return self._data.get("name") + @property + def images(self): + return self._data.get("images") + + @property + def versions(self): + return self._data.get("versions") + @symbol.setter def symbol(self, new_symbol): self._data["symbol"] = new_symbol + @property + def type(self): + + if "iou" in self._data: + return "iou" + elif "dynamips" in self._data: + return "dynamips" + elif "docker" in self._data: + return "docker" + else: + return "qemu" + def asdict(self): """ Appliance data (a hash) """ + data = copy.deepcopy(self._data) data["builtin"] = self._builtin return data diff --git a/gns3server/controller/appliance_manager.py b/gns3server/controller/appliance_manager.py index 375c778a..eb968f0d 100644 --- a/gns3server/controller/appliance_manager.py +++ b/gns3server/controller/appliance_manager.py @@ -16,17 +16,32 @@ # along with this program. If not, see . import os -import shutil import json -import uuid import asyncio +import aiofiles + +from typing import Tuple, List +from aiohttp.client_exceptions import ClientError + +from uuid import UUID +from pydantic import ValidationError from .appliance import Appliance from ..config import Config from ..utils.asyncio import locking from ..utils.get_resource import get_resource from ..utils.http_client import HTTPClient -from .controller_error import ControllerError +from .controller_error import ControllerBadRequestError, ControllerNotFoundError, ControllerError +from .appliance_to_template import ApplianceToTemplate +from ..utils.images import InvalidImageError, write_image, md5sum +from ..utils.asyncio import wait_run_in_executor + +from gns3server import schemas +from gns3server.utils.images import default_images_directory +from gns3server.db.repositories.images import ImagesRepository +from gns3server.db.repositories.templates import TemplatesRepository +from gns3server.services.templates import TemplatesService +from gns3server.db.repositories.rbac import RbacRepository import logging @@ -44,7 +59,7 @@ class ApplianceManager: self._appliances_etag = None @property - def appliances_etag(self): + def appliances_etag(self) -> str: """ :returns: ETag for downloaded appliances """ @@ -60,14 +75,14 @@ class ApplianceManager: self._appliances_etag = etag @property - def appliances(self): + def appliances(self) -> dict: """ :returns: The dictionary of appliances managed by GNS3 """ return self._appliances - def appliances_path(self): + def appliances_path(self) -> str: """ Get the image storage directory """ @@ -77,7 +92,190 @@ class ApplianceManager: os.makedirs(appliances_path, exist_ok=True) return appliances_path - def load_appliances(self, symbol_theme="Classic"): + def _find_appliances_from_image_checksum(self, image_checksum: str) -> List[Tuple[Appliance, str]]: + """ + Find appliances that matches an image checksum. + """ + + appliances = [] + for appliance in self._appliances.values(): + if appliance.images: + for image in appliance.images: + if image.get("md5sum") == image_checksum: + appliances.append((appliance, image.get("version"))) + return appliances + + async def _download_image( + self, + image_dir: str, + image_name: str, + image_type: str, + image_url: str, + images_repo: ImagesRepository + ) -> None: + """ + Download an image. + """ + + log.info(f"Downloading image '{image_name}' from '{image_url}'") + image_path = os.path.join(image_dir, image_name) + try: + async with HTTPClient.get(image_url) as response: + if response.status != 200: + raise ControllerError(f"Could not download '{image_name}' due to HTTP error code {response.status}") + await write_image(image_name, image_type, image_path, response.content.iter_any(), images_repo) + except (OSError, InvalidImageError) as e: + raise ControllerError(f"Could not save {image_type} image '{image_path}': {e}") + except ClientError as e: + raise ControllerError(f"Could not connect to download '{image_name}': {e}") + except asyncio.TimeoutError: + raise ControllerError(f"Timeout while downloading '{image_name}' from '{image_url}'") + + async def _find_appliance_version_images( + self, + appliance: Appliance, + version: dict, + images_repo: ImagesRepository, + image_dir: str + ) -> None: + """ + Find all the images belonging to a specific appliance version. + """ + + version_images = version.get("images") + if version_images: + for appliance_key, appliance_file in version_images.items(): + for image in appliance.images: + if appliance_file == image.get("filename"): + image_checksum = image.get("md5sum") + image_in_db = await images_repo.get_image_by_checksum(image_checksum) + if image_in_db: + version_images[appliance_key] = image_in_db.filename + else: + # check if the image is on disk + image_path = os.path.join(image_dir, appliance_file) + if os.path.exists(image_path) and await wait_run_in_executor(md5sum, image_path) == image_checksum: + async with aiofiles.open(image_path, "rb") as f: + await write_image(appliance_file, appliance.type, image_path, f, images_repo) + else: + # download the image if there is a direct download URL + direct_download_url = image.get("direct_download_url") + if direct_download_url: + await self._download_image( + image_dir, + appliance_file, + appliance.type, + direct_download_url, + images_repo) + else: + raise ControllerError(f"Could not find '{appliance_file}'") + + async def _create_template(self, template_data, templates_repo, rbac_repo, current_user): + """ + Create a new template + """ + + try: + template_create = schemas.TemplateCreate(**template_data) + except ValidationError as e: + raise ControllerError(message=f"Could not validate template data: {e}") + template = await TemplatesService(templates_repo).create_template(template_create) + template_id = template.get("template_id") + await rbac_repo.add_permission_to_user_with_path(current_user.user_id, f"/templates/{template_id}/*") + log.info(f"Template '{template.get('name')}' has been created") + + async def _appliance_to_template(self, appliance: Appliance, version: str = None) -> dict: + """ + Get template data from appliance + """ + + from . import Controller + + # downloading missing custom symbol for this appliance + if appliance.symbol and not appliance.symbol.startswith(":/symbols/"): + destination_path = os.path.join(Controller.instance().symbols.symbols_path(), appliance.symbol) + if not os.path.exists(destination_path): + await self._download_symbol(appliance.symbol, destination_path) + return ApplianceToTemplate().new_template(appliance.asdict(), version, "local") # FIXME: "local" + + async def install_appliances_from_image( + self, + image_path: str, + image_checksum: str, + images_repo: ImagesRepository, + templates_repo: TemplatesRepository, + rbac_repo: RbacRepository, + current_user: schemas.User, + image_dir: str + ) -> None: + """ + Install appliances using an image checksum + """ + + appliances_info = self._find_appliances_from_image_checksum(image_checksum) + for appliance, image_version in appliances_info: + try: + schemas.Appliance.parse_obj(appliance.asdict()) + except ValidationError as e: + log.warning(message=f"Could not validate appliance '{appliance.id}': {e}") + if appliance.versions: + for version in appliance.versions: + if version.get("name") == image_version: + try: + await self._find_appliance_version_images(appliance, version, images_repo, image_dir) + template_data = await self._appliance_to_template(appliance, version) + await self._create_template(template_data, templates_repo, rbac_repo, current_user) + except (ControllerError, InvalidImageError) as e: + log.warning(f"Could not automatically create template using image '{image_path}': {e}") + + async def install_appliance( + self, + appliance_id: UUID, + version: str, + images_repo: ImagesRepository, + templates_repo: TemplatesRepository, + rbac_repo: RbacRepository, + current_user: schemas.User + ) -> None: + """ + Install a new appliance + """ + + appliance = self._appliances.get(str(appliance_id)) + if not appliance: + raise ControllerNotFoundError(message=f"Could not find appliance '{appliance_id}'") + + try: + schemas.Appliance.parse_obj(appliance.asdict()) + except ValidationError as e: + raise ControllerError(message=f"Could not validate appliance '{appliance_id}': {e}") + + if version: + if not appliance.versions: + raise ControllerBadRequestError(message=f"Appliance '{appliance_id}' do not have versions") + + image_dir = default_images_directory(appliance.type) + for appliance_version_info in appliance.versions: + if appliance_version_info.get("name") == version: + try: + await self._find_appliance_version_images(appliance, appliance_version_info, images_repo, image_dir) + except InvalidImageError as e: + raise ControllerError(message=f"Image error: {e}") + template_data = await self._appliance_to_template(appliance, appliance_version_info) + return await self._create_template(template_data, templates_repo, rbac_repo, current_user) + + raise ControllerNotFoundError(message=f"Could not find version '{version}' in appliance '{appliance_id}'") + + else: + if appliance.versions: + # TODO: install appliance versions based on available images + raise ControllerBadRequestError(message=f"Selecting a version is required to install " + f"appliance '{appliance_id}'") + + template_data = await self._appliance_to_template(appliance) + await self._create_template(template_data, templates_repo, rbac_repo, current_user) + + def load_appliances(self, symbol_theme: str = "Classic") -> None: """ Loads appliance files from disk. """ @@ -98,25 +296,23 @@ class ApplianceManager: if not file.endswith(".gns3a") and not file.endswith(".gns3appliance"): continue path = os.path.join(directory, file) - appliance_id = uuid.uuid3( - uuid.NAMESPACE_URL, path - ) # Generate UUID from path to avoid change between reboots try: with open(path, encoding="utf-8") as f: - appliance = Appliance(appliance_id, json.load(f), builtin=builtin) + appliance = Appliance(path, json.load(f), builtin=builtin) json_data = appliance.asdict() # Check if loaded without error if appliance.status != "broken": + schemas.Appliance.parse_obj(json_data) self._appliances[appliance.id] = appliance if not appliance.symbol or appliance.symbol.startswith(":/symbols/"): # apply a default symbol if the appliance has none or a default symbol default_symbol = self._get_default_symbol(json_data, symbol_theme) if default_symbol: appliance.symbol = default_symbol - except (ValueError, OSError, KeyError) as e: - log.warning("Cannot load appliance file '%s': %s", path, str(e)) + except (ValueError, OSError, KeyError, ValidationError) as e: + print(f"Cannot load appliance file '{path}': {e}") continue - def _get_default_symbol(self, appliance, symbol_theme): + def _get_default_symbol(self, appliance: dict, symbol_theme: str) -> str: """ Returns the default symbol for a given appliance. """ @@ -132,7 +328,7 @@ class ApplianceManager: return controller.symbols.get_default_symbol("qemu_guest", symbol_theme) return controller.symbols.get_default_symbol(category, symbol_theme) - async def download_custom_symbols(self): + async def download_custom_symbols(self) -> None: """ Download custom appliance symbols from our GitHub registry repository. """ @@ -151,12 +347,13 @@ class ApplianceManager: # refresh the symbol cache Controller.instance().symbols.list() - async def _download_symbol(self, symbol, destination_path): + async def _download_symbol(self, symbol: str, destination_path: str) -> None: """ Download a custom appliance symbol from our GitHub registry repository. """ symbol_url = f"https://raw.githubusercontent.com/GNS3/gns3-registry/master/symbols/{symbol}" + log.info(f"Downloading symbol '{symbol}'") async with HTTPClient.get(symbol_url) as response: if response.status != 200: log.warning( @@ -174,7 +371,7 @@ class ApplianceManager: log.warning(f"Could not write appliance symbol '{destination_path}': {e}") @locking - async def download_appliances(self): + async def download_appliances(self) -> None: """ Downloads appliance files from GitHub registry repository. """ diff --git a/gns3server/controller/appliance_to_template.py b/gns3server/controller/appliance_to_template.py new file mode 100644 index 00000000..aee787f6 --- /dev/null +++ b/gns3server/controller/appliance_to_template.py @@ -0,0 +1,134 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# +# Copyright (C) 2021 GNS3 Technologies Inc. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +import logging +log = logging.getLogger(__name__) + + +class ApplianceToTemplate: + """ + Appliance installation. + """ + + def new_template(self, appliance_config, version, server): + """ + Creates a new template from an appliance. + """ + + new_template = { + "compute_id": server, + "name": appliance_config["name"], + } + + if version: + new_template["version"] = version.get("name") + + if "usage" in appliance_config: + new_template["usage"] = appliance_config["usage"] + + if appliance_config["category"] == "multilayer_switch": + new_template["category"] = "switch" + else: + new_template["category"] = appliance_config["category"] + + if "symbol" in appliance_config: + new_template["symbol"] = appliance_config.get("symbol") + + if new_template.get("symbol") is None: + if appliance_config["category"] == "guest": + if "docker" in appliance_config: + new_template["symbol"] = ":/symbols/docker_guest.svg" + else: + new_template["symbol"] = ":/symbols/qemu_guest.svg" + elif appliance_config["category"] == "router": + new_template["symbol"] = ":/symbols/router.svg" + elif appliance_config["category"] == "switch": + new_template["symbol"] = ":/symbols/ethernet_switch.svg" + elif appliance_config["category"] == "multilayer_switch": + new_template["symbol"] = ":/symbols/multilayer_switch.svg" + elif appliance_config["category"] == "firewall": + new_template["symbol"] = ":/symbols/firewall.svg" + + if "qemu" in appliance_config: + new_template["template_type"] = "qemu" + self._add_qemu_config(new_template, appliance_config, version) + elif "iou" in appliance_config: + new_template["template_type"] = "iou" + self._add_iou_config(new_template, appliance_config, version) + elif "dynamips" in appliance_config: + new_template["template_type"] = "dynamips" + self._add_dynamips_config(new_template, appliance_config, version) + elif "docker" in appliance_config: + new_template["template_type"] = "docker" + self._add_docker_config(new_template, appliance_config) + + return new_template + + def _add_qemu_config(self, new_config, appliance_config, version): + + new_config.update(appliance_config["qemu"]) + + # the following properties are not valid for a template + new_config.pop("kvm", None) + new_config.pop("path", None) + new_config.pop("arch", None) + + options = appliance_config["qemu"].get("options", "") + if appliance_config["qemu"].get("kvm", "allow") == "disable" and "-machine accel=tcg" not in options: + options += " -machine accel=tcg" + new_config["options"] = options.strip() + new_config.update(version.get("images")) + + if "path" in appliance_config["qemu"]: + new_config["qemu_path"] = appliance_config["qemu"]["path"] + else: + new_config["qemu_path"] = "qemu-system-{}".format(appliance_config["qemu"]["arch"]) + + if "first_port_name" in appliance_config: + new_config["first_port_name"] = appliance_config["first_port_name"] + + if "port_name_format" in appliance_config: + new_config["port_name_format"] = appliance_config["port_name_format"] + + if "port_segment_size" in appliance_config: + new_config["port_segment_size"] = appliance_config["port_segment_size"] + + if "custom_adapters" in appliance_config: + new_config["custom_adapters"] = appliance_config["custom_adapters"] + + if "linked_clone" in appliance_config: + new_config["linked_clone"] = appliance_config["linked_clone"] + + def _add_docker_config(self, new_config, appliance_config): + + new_config.update(appliance_config["docker"]) + + if "custom_adapters" in appliance_config: + new_config["custom_adapters"] = appliance_config["custom_adapters"] + + def _add_dynamips_config(self, new_config, appliance_config, version): + + new_config.update(appliance_config["dynamips"]) + new_config["idlepc"] = version.get("idlepc", "") + new_config["image"] = version.get("images").get("image") + + def _add_iou_config(self, new_config, appliance_config, version): + + new_config.update(appliance_config["iou"]) + new_config["path"] = version.get("images").get("image") diff --git a/gns3server/controller/link.py b/gns3server/controller/link.py index b4a02c0e..ae224b7d 100644 --- a/gns3server/controller/link.py +++ b/gns3server/controller/link.py @@ -174,7 +174,6 @@ class Link: async def update_link_style(self, link_style): if link_style != self._link_style: self._link_style = link_style - await self.update() self._project.emit_notification("link.updated", self.asdict()) self._project.dump() diff --git a/gns3server/controller/node.py b/gns3server/controller/node.py index ca086455..c6a046e4 100644 --- a/gns3server/controller/node.py +++ b/gns3server/controller/node.py @@ -25,6 +25,7 @@ from .compute import ComputeConflict, ComputeError from .controller_error import ControllerError, ControllerTimeoutError from .ports.port_factory import PortFactory, StandardPortFactory, DynamipsPortFactory from ..utils.images import images_directories +from ..config import Config from ..utils.qt import qt_font_to_style @@ -293,10 +294,11 @@ class Node: if val is None: val = ":/symbols/computer.svg" - # No abs path, fix them (bug of 1.X) try: - if not val.startswith(":") and os.path.abspath(val): - val = os.path.basename(val) + if not val.startswith(":") and os.path.isabs(val): + default_symbol_directory = Config.instance().settings.Server.symbols_path + if os.path.commonprefix([default_symbol_directory, val]) != default_symbol_directory: + val = os.path.basename(val) except OSError: pass diff --git a/gns3server/controller/symbols.py b/gns3server/controller/symbols.py index 395fb947..e601c59a 100644 --- a/gns3server/controller/symbols.py +++ b/gns3server/controller/symbols.py @@ -106,8 +106,7 @@ class Symbols: theme = "Custom symbols" symbols.append({"symbol_id": symbol_file, "filename": filename, "builtin": False, "theme": theme}) self._symbols_path[symbol_file] = os.path.join(root, filename) - - symbols.sort(key=lambda x: x["filename"]) + symbols.sort(key=lambda x: x["theme"]) return symbols def symbols_path(self): @@ -122,6 +121,10 @@ class Symbols: return None return directory + def has_symbol(self, symbol_id): + + return self._symbols_path.get(symbol_id) + def get_path(self, symbol_id): try: return self._symbols_path[symbol_id] diff --git a/gns3server/crash_report.py b/gns3server/crash_report.py index 9b0f379b..f9f750fe 100644 --- a/gns3server/crash_report.py +++ b/gns3server/crash_report.py @@ -59,7 +59,7 @@ class CrashReport: Report crash to a third party service """ - DSN = "https://aefc1e0e41e94957936f8773071aebf9:056b5247d4854b81ac9162d9ccc5a503@o19455.ingest.sentry.io/38482" + DSN = "https://959feb527c7441068b1bf80301b6e2c4:efa6d99da4c64faa8a7d929360765b40@o19455.ingest.sentry.io/38482" _instance = None def __init__(self): diff --git a/gns3server/db/models/__init__.py b/gns3server/db/models/__init__.py index ed5f7ead..d10d0668 100644 --- a/gns3server/db/models/__init__.py +++ b/gns3server/db/models/__init__.py @@ -20,6 +20,7 @@ from .users import User, UserGroup from .roles import Role from .permissions import Permission from .computes import Compute +from .images import Image from .templates import ( Template, CloudTemplate, diff --git a/gns3server/db/models/computes.py b/gns3server/db/models/computes.py index 5fd1cf56..71043d88 100644 --- a/gns3server/db/models/computes.py +++ b/gns3server/db/models/computes.py @@ -15,7 +15,7 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . -from sqlalchemy import Column, String +from sqlalchemy import Column, String, Integer from .base import BaseTable, GUID @@ -28,6 +28,6 @@ class Compute(BaseTable): name = Column(String, index=True) protocol = Column(String) host = Column(String) - port = Column(String) + port = Column(Integer) user = Column(String) password = Column(String) diff --git a/gns3server/db/models/images.py b/gns3server/db/models/images.py new file mode 100644 index 00000000..175ab278 --- /dev/null +++ b/gns3server/db/models/images.py @@ -0,0 +1,43 @@ +#!/usr/bin/env python +# +# Copyright (C) 2021 GNS3 Technologies Inc. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +from sqlalchemy import Table, Column, String, ForeignKey, BigInteger, Integer +from sqlalchemy.orm import relationship + +from .base import Base, BaseTable, GUID + + +image_template_link = Table( + "images_templates_link", + Base.metadata, + Column("image_id", Integer, ForeignKey("images.image_id", ondelete="CASCADE")), + Column("template_id", GUID, ForeignKey("templates.template_id", ondelete="CASCADE")) +) + + +class Image(BaseTable): + + __tablename__ = "images" + + image_id = Column(Integer, primary_key=True, autoincrement=True) + filename = Column(String, index=True) + path = Column(String, unique=True) + image_type = Column(String) + image_size = Column(BigInteger) + checksum = Column(String, index=True) + checksum_algorithm = Column(String) + templates = relationship("Template", secondary=image_template_link, back_populates="images") diff --git a/gns3server/db/models/permissions.py b/gns3server/db/models/permissions.py index 4779b6af..8be3d669 100644 --- a/gns3server/db/models/permissions.py +++ b/gns3server/db/models/permissions.py @@ -53,19 +53,19 @@ def create_default_roles(target, connection, **kw): default_permissions = [ { "description": "Allow access to all endpoints", - "methods": ["GET", "HEAD", "POST", "PUT", "DELETE", "PATCH"], + "methods": ["GET", "POST", "PUT", "DELETE"], "path": "/", "action": "ALLOW" }, { "description": "Allow to create and list projects", - "methods": ["GET", "HEAD", "POST"], + "methods": ["GET", "POST"], "path": "/projects", "action": "ALLOW" }, { "description": "Allow to create and list templates", - "methods": ["GET", "HEAD", "POST"], + "methods": ["GET", "POST"], "path": "/templates", "action": "ALLOW" }, @@ -77,7 +77,7 @@ def create_default_roles(target, connection, **kw): }, { "description": "Allow access to all symbol endpoints", - "methods": ["GET", "HEAD", "POST"], + "methods": ["GET", "POST"], "path": "/symbols/*", "action": "ALLOW" }, diff --git a/gns3server/db/models/roles.py b/gns3server/db/models/roles.py index 6cba0cc1..b531a50f 100644 --- a/gns3server/db/models/roles.py +++ b/gns3server/db/models/roles.py @@ -38,7 +38,7 @@ class Role(BaseTable): __tablename__ = "roles" role_id = Column(GUID, primary_key=True, default=generate_uuid) - name = Column(String, unique=True) + name = Column(String, unique=True, index=True) description = Column(String) is_builtin = Column(Boolean, default=False) permissions = relationship("Permission", secondary=permission_role_link, back_populates="roles") diff --git a/gns3server/db/models/templates.py b/gns3server/db/models/templates.py index 470b88cb..3086a15c 100644 --- a/gns3server/db/models/templates.py +++ b/gns3server/db/models/templates.py @@ -17,8 +17,10 @@ from sqlalchemy import Boolean, Column, String, Integer, ForeignKey, PickleType +from sqlalchemy.orm import relationship from .base import BaseTable, generate_uuid, GUID +from .images import image_template_link class Template(BaseTable): @@ -27,13 +29,15 @@ class Template(BaseTable): template_id = Column(GUID, primary_key=True, default=generate_uuid) name = Column(String, index=True) + version = Column(String) category = Column(String) default_name_format = Column(String) symbol = Column(String) builtin = Column(Boolean, default=False) - compute_id = Column(String) usage = Column(String) template_type = Column(String) + compute_id = Column(String) + images = relationship("Image", secondary=image_template_link, back_populates="templates") __mapper_args__ = { "polymorphic_identity": "templates", @@ -197,7 +201,6 @@ class QemuTemplate(Template): kernel_image = Column(String) bios_image = Column(String) kernel_command_line = Column(String) - legacy_networking = Column(Boolean) replicate_network_connection_state = Column(Boolean) create_config_disk = Column(Boolean) on_close = Column(String) diff --git a/gns3server/db/repositories/computes.py b/gns3server/db/repositories/computes.py index b76842cb..2ea00bbd 100644 --- a/gns3server/db/repositories/computes.py +++ b/gns3server/db/repositories/computes.py @@ -23,15 +23,14 @@ from sqlalchemy.ext.asyncio import AsyncSession from .base import BaseRepository import gns3server.db.models as models -from gns3server.services import auth_service from gns3server import schemas class ComputesRepository(BaseRepository): + def __init__(self, db_session: AsyncSession) -> None: super().__init__(db_session) - self._auth_service = auth_service async def get_compute(self, compute_id: UUID) -> Optional[models.Compute]: diff --git a/gns3server/db/repositories/images.py b/gns3server/db/repositories/images.py new file mode 100644 index 00000000..17bf4c71 --- /dev/null +++ b/gns3server/db/repositories/images.py @@ -0,0 +1,138 @@ +#!/usr/bin/env python +# +# Copyright (C) 2021 GNS3 Technologies Inc. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +import os + +from typing import Optional, List +from sqlalchemy import select, delete +from sqlalchemy.ext.asyncio import AsyncSession + +from .base import BaseRepository + +import gns3server.db.models as models + +import logging + +log = logging.getLogger(__name__) + + +class ImagesRepository(BaseRepository): + + def __init__(self, db_session: AsyncSession) -> None: + + super().__init__(db_session) + + async def get_image(self, image_path: str) -> Optional[models.Image]: + """ + Get an image by its path. + """ + + image_dir, image_name = os.path.split(image_path) + if image_dir: + query = select(models.Image).\ + where(models.Image.filename == image_name, models.Image.path.endswith(image_path)) + else: + query = select(models.Image).where(models.Image.filename == image_name) + result = await self._db_session.execute(query) + return result.scalars().one_or_none() + + async def get_image_by_checksum(self, checksum: str) -> Optional[models.Image]: + """ + Get an image by its checksum. + """ + + query = select(models.Image).where(models.Image.checksum == checksum) + result = await self._db_session.execute(query) + return result.scalars().first() + + async def get_images(self) -> List[models.Image]: + """ + Get all images. + """ + + query = select(models.Image) + result = await self._db_session.execute(query) + return result.scalars().all() + + async def get_image_templates(self, image_id: int) -> Optional[List[models.Template]]: + """ + Get all templates that an image belongs to. + """ + + query = select(models.Template).\ + join(models.Template.images).\ + filter(models.Image.image_id == image_id) + + result = await self._db_session.execute(query) + return result.scalars().all() + + async def add_image(self, image_name, image_type, image_size, path, checksum, checksum_algorithm) -> models.Image: + """ + Create a new image. + """ + + db_image = models.Image( + image_id=None, + filename=image_name, + image_type=image_type, + image_size=image_size, + path=path, + checksum=checksum, + checksum_algorithm=checksum_algorithm + ) + + self._db_session.add(db_image) + await self._db_session.commit() + await self._db_session.refresh(db_image) + return db_image + + async def delete_image(self, image_path: str) -> bool: + """ + Delete an image. + """ + + image_dir, image_name = os.path.split(image_path) + if image_dir: + query = delete(models.Image).\ + where(models.Image.filename == image_name, models.Image.path.endswith(image_path)).\ + execution_options(synchronize_session=False) + else: + query = delete(models.Image).where(models.Image.filename == image_name) + result = await self._db_session.execute(query) + await self._db_session.commit() + return result.rowcount > 0 + + async def prune_images(self) -> int: + """ + Prune images not attached to any template. + """ + + query = select(models.Image).\ + filter(~models.Image.templates.any()) + result = await self._db_session.execute(query) + images = result.scalars().all() + images_deleted = 0 + for image in images: + try: + log.debug(f"Deleting image '{image.path}'") + os.remove(image.path) + except OSError: + log.warning(f"Could not delete image file {image.path}") + if await self.delete_image(image.filename): + images_deleted += 1 + log.info(f"{images_deleted} image(s) have been deleted") + return images_deleted diff --git a/gns3server/db/repositories/templates.py b/gns3server/db/repositories/templates.py index 4e6f50b1..8fb3e4cf 100644 --- a/gns3server/db/repositories/templates.py +++ b/gns3server/db/repositories/templates.py @@ -15,10 +15,13 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . +import os + from uuid import UUID -from typing import List, Union -from sqlalchemy import select, update, delete +from typing import List, Union, Optional +from sqlalchemy import select, delete from sqlalchemy.ext.asyncio import AsyncSession +from sqlalchemy.orm import selectinload from sqlalchemy.orm.session import make_transient from .base import BaseRepository @@ -41,19 +44,30 @@ TEMPLATE_TYPE_TO_MODEL = { class TemplatesRepository(BaseRepository): + def __init__(self, db_session: AsyncSession) -> None: super().__init__(db_session) async def get_template(self, template_id: UUID) -> Union[None, models.Template]: - query = select(models.Template).where(models.Template.template_id == template_id) + query = select(models.Template).\ + options(selectinload(models.Template.images)).\ + where(models.Template.template_id == template_id) + result = await self._db_session.execute(query) + return result.scalars().first() + + async def get_template_by_name_and_version(self, name: str, version: str) -> Union[None, models.Template]: + + query = select(models.Template).\ + options(selectinload(models.Template.images)).\ + where(models.Template.name == name, models.Template.version == version) result = await self._db_session.execute(query) return result.scalars().first() async def get_templates(self) -> List[models.Template]: - query = select(models.Template) + query = select(models.Template).options(selectinload(models.Template.images)) result = await self._db_session.execute(query) return result.scalars().all() @@ -66,20 +80,14 @@ class TemplatesRepository(BaseRepository): await self._db_session.refresh(db_template) return db_template - async def update_template(self, template_id: UUID, template_update: schemas.TemplateUpdate) -> schemas.Template: + async def update_template(self, db_template: models.Template, template_settings: dict) -> schemas.Template: - update_values = template_update.dict(exclude_unset=True) - - query = update(models.Template). \ - where(models.Template.template_id == template_id). \ - values(update_values) - - await self._db_session.execute(query) + # update the fields directly because update() query couldn't work + for key, value in template_settings.items(): + setattr(db_template, key, value) await self._db_session.commit() - template_db = await self.get_template(template_id) - if template_db: - await self._db_session.refresh(template_db) # force refresh of updated_at value - return template_db + await self._db_session.refresh(db_template) # force refresh of updated_at value + return db_template async def delete_template(self, template_id: UUID) -> bool: @@ -88,18 +96,77 @@ class TemplatesRepository(BaseRepository): await self._db_session.commit() return result.rowcount > 0 - async def duplicate_template(self, template_id: UUID) -> schemas.Template: + async def duplicate_template(self, template_id: UUID) -> Optional[schemas.Template]: - query = select(models.Template).where(models.Template.template_id == template_id) + query = select(models.Template).\ + options(selectinload(models.Template.images)).\ + where(models.Template.template_id == template_id) db_template = (await self._db_session.execute(query)).scalars().first() - if not db_template: - return db_template - - # duplicate db object with new primary key (template_id) - self._db_session.expunge(db_template) - make_transient(db_template) - db_template.template_id = None - self._db_session.add(db_template) - await self._db_session.commit() - await self._db_session.refresh(db_template) + if db_template: + # duplicate db object with new primary key (template_id) + self._db_session.expunge(db_template) + make_transient(db_template) + db_template.template_id = None + self._db_session.add(db_template) + await self._db_session.commit() + await self._db_session.refresh(db_template) return db_template + + async def get_image(self, image_path: str) -> Optional[models.Image]: + """ + Get an image by its path. + """ + + image_dir, image_name = os.path.split(image_path) + if image_dir: + query = select(models.Image).\ + where(models.Image.filename == image_name, models.Image.path.endswith(image_path)) + else: + query = select(models.Image).where(models.Image.filename == image_name) + result = await self._db_session.execute(query) + return result.scalars().one_or_none() + + async def add_image_to_template( + self, + template_id: UUID, + image: models.Image + ) -> Union[None, models.Template]: + """ + Add an image to template. + """ + + query = select(models.Template).\ + options(selectinload(models.Template.images)).\ + where(models.Template.template_id == template_id) + result = await self._db_session.execute(query) + template_in_db = result.scalars().first() + if not template_in_db: + return None + + template_in_db.images.append(image) + await self._db_session.commit() + await self._db_session.refresh(template_in_db) + return template_in_db + + async def remove_image_from_template( + self, + template_id: UUID, + image: models.Image + ) -> Union[None, models.Template]: + """ + Remove an image from a template. + """ + + query = select(models.Template).\ + options(selectinload(models.Template.images)).\ + where(models.Template.template_id == template_id) + result = await self._db_session.execute(query) + template_in_db = result.scalars().first() + if not template_in_db: + return None + + if image in template_in_db.images: + template_in_db.images.remove(image) + await self._db_session.commit() + await self._db_session.refresh(template_in_db) + return template_in_db diff --git a/gns3server/handlers/api/compute/qemu_handler.py b/gns3server/handlers/api/compute/qemu_handler.py deleted file mode 100644 index e69de29b..00000000 diff --git a/gns3server/handlers/api/compute/server_handler.py b/gns3server/handlers/api/compute/server_handler.py new file mode 100644 index 00000000..f2e15c5f --- /dev/null +++ b/gns3server/handlers/api/compute/server_handler.py @@ -0,0 +1,135 @@ + +# -*- coding: utf-8 -*- +# +# Copyright (C) 2015 GNS3 Technologies Inc. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +import psutil +import platform + +from gns3server.web.route import Route +from gns3server.config import Config +from gns3server.schemas.version import VERSION_SCHEMA +from gns3server.schemas.server_statistics import SERVER_STATISTICS_SCHEMA +from gns3server.compute.port_manager import PortManager +from gns3server.utils.cpu_percent import CpuPercent +from gns3server.utils.path import get_default_project_directory +from gns3server.version import __version__ +from aiohttp.web import HTTPConflict + + +class ServerHandler: + + @Route.get( + r"/version", + description="Retrieve the server version number", + output=VERSION_SCHEMA) + def version(request, response): + + config = Config.instance() + local_server = config.get_section_config("Server").getboolean("local", False) + response.json({"version": __version__, "local": local_server}) + + @Route.get( + r"/statistics", + description="Retrieve server statistics", + output=SERVER_STATISTICS_SCHEMA, + status_codes={ + 200: "Statistics information returned", + 409: "Conflict" + }) + def statistics(request, response): + + try: + memory_total = psutil.virtual_memory().total + memory_free = psutil.virtual_memory().available + memory_used = memory_total - memory_free # actual memory usage in a cross platform fashion + swap_total = psutil.swap_memory().total + swap_free = psutil.swap_memory().free + swap_used = psutil.swap_memory().used + cpu_percent = int(CpuPercent.get()) + load_average_percent = [int(x / psutil.cpu_count() * 100) for x in psutil.getloadavg()] + memory_percent = int(psutil.virtual_memory().percent) + swap_percent = int(psutil.swap_memory().percent) + disk_usage_percent = int(psutil.disk_usage(get_default_project_directory()).percent) + except psutil.Error as e: + raise HTTPConflict(text="Psutil error detected: {}".format(e)) + response.json({"memory_total": memory_total, + "memory_free": memory_free, + "memory_used": memory_used, + "swap_total": swap_total, + "swap_free": swap_free, + "swap_used": swap_used, + "cpu_usage_percent": cpu_percent, + "memory_usage_percent": memory_percent, + "swap_usage_percent": swap_percent, + "disk_usage_percent": disk_usage_percent, + "load_average_percent": load_average_percent}) + + @Route.get( + r"/debug", + description="Return debug information about the compute", + status_codes={ + 201: "Written" + }) + def debug(request, response): + response.content_type = "text/plain" + response.text = ServerHandler._getDebugData() + + @staticmethod + def _getDebugData(): + try: + addrs = ["* {}: {}".format(key, val) for key, val in psutil.net_if_addrs().items()] + except UnicodeDecodeError: + addrs = ["INVALID ADDR WITH UNICODE CHARACTERS"] + + data = """Version: {version} +OS: {os} +Python: {python} +CPU: {cpu} +Memory: {memory} + +Networks: +{addrs} +""".format( + version=__version__, + os=platform.platform(), + python=platform.python_version(), + memory=psutil.virtual_memory(), + cpu=psutil.cpu_times(), + addrs="\n".join(addrs) + ) + + try: + connections = psutil.net_connections() + # You need to be root for OSX + except psutil.AccessDenied: + connections = None + + if connections: + data += "\n\nConnections:\n" + for port in PortManager.instance().tcp_ports: + found = False + for open_port in connections: + if open_port.laddr[1] == port: + found = True + data += "TCP {}: {}\n".format(port, found) + for port in PortManager.instance().udp_ports: + found = False + for open_port in connections: + if open_port.laddr[1] == port: + found = True + data += "UDP {}: {}\n".format(port, found) + return data diff --git a/gns3server/handlers/api/controller/server_handler.py b/gns3server/handlers/api/controller/server_handler.py deleted file mode 100644 index e69de29b..00000000 diff --git a/gns3server/schemas/__init__.py b/gns3server/schemas/__init__.py index 7a8ec42f..5a3e99a3 100644 --- a/gns3server/schemas/__init__.py +++ b/gns3server/schemas/__init__.py @@ -23,6 +23,8 @@ from .version import Version from .controller.links import LinkCreate, LinkUpdate, Link from .controller.computes import ComputeCreate, ComputeUpdate, AutoIdlePC, Compute from .controller.templates import TemplateCreate, TemplateUpdate, TemplateUsage, Template +from .controller.images import Image, ImageType +from .controller.appliances import ApplianceVersion, Appliance from .controller.drawings import Drawing from .controller.gns3vm import GNS3VM from .controller.nodes import NodeCreate, NodeUpdate, NodeDuplicate, NodeCapture, Node diff --git a/gns3server/schemas/compute/qemu_nodes.py b/gns3server/schemas/compute/qemu_nodes.py index de464fef..2c9d33ed 100644 --- a/gns3server/schemas/compute/qemu_nodes.py +++ b/gns3server/schemas/compute/qemu_nodes.py @@ -195,7 +195,6 @@ class QemuBase(BaseModel): mac_address: Optional[str] = Field( None, description="QEMU MAC address", regex="^([0-9a-fA-F]{2}[:]){5}([0-9a-fA-F]{2})$" ) - legacy_networking: Optional[bool] = Field(None, description="Use QEMU legagy networking commands (-net syntax)") replicate_network_connection_state: Optional[bool] = Field( None, description="Replicate the network connection state for links in Qemu" ) diff --git a/gns3server/schemas/controller/appliances.py b/gns3server/schemas/controller/appliances.py new file mode 100644 index 00000000..5af72108 --- /dev/null +++ b/gns3server/schemas/controller/appliances.py @@ -0,0 +1,464 @@ +# +# Copyright (C) 2021 GNS3 Technologies Inc. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# Generated from JSON schema using https://github.com/koxudaxi/datamodel-code-generator + +from enum import Enum +from typing import List, Optional, Union +from uuid import UUID +from pydantic import AnyUrl, BaseModel, EmailStr, Field, confloat, conint, constr + + +class Category(Enum): + + router = 'router' + multilayer_switch = 'multilayer_switch' + switch = 'switch' + firewall = 'firewall' + guest = 'guest' + + +class RegistryVersion(Enum): + + version1 = 1 + version2 = 2 + version3 = 3 + version4 = 4 + version5 = 5 + version6 = 6 + + +class Status(Enum): + + stable = 'stable' + experimental = 'experimental' + broken = 'broken' + + +class Availability(Enum): + + free = 'free' + with_registration = 'with-registration' + free_to_try = 'free-to-try' + service_contract = 'service-contract' + + +class ConsoleType(Enum): + + telnet = 'telnet' + vnc = 'vnc' + http = 'http' + https = 'https' + none = 'none' + + +class Docker(BaseModel): + + adapters: int = Field(..., title='Number of ethernet adapters') + image: str = Field(..., title='Docker image in the Docker Hub') + start_command: Optional[str] = Field( + None, + title='Command executed when the container start. Empty will use the default', + ) + environment: Optional[str] = Field(None, title='One KEY=VAR environment by line') + console_type: Optional[ConsoleType] = Field( + None, title='Type of console connection for the administration of the appliance' + ) + console_http_port: Optional[int] = Field( + None, description='Internal port in the container of the HTTP server' + ) + console_http_path: Optional[str] = Field( + None, description='Path of the web interface' + ) + extra_hosts: Optional[str] = Field( + None, description='Hosts which will be written to /etc/hosts into container' + ) + extra_volumes: Optional[List[str]] = Field( + None, + description='Additional directories to make persistent that are not included in the images VOLUME directive', + ) + + +class Iou(BaseModel): + + ethernet_adapters: int = Field(..., title='Number of ethernet adapters') + serial_adapters: int = Field(..., title='Number of serial adapters') + nvram: int = Field(..., title='Host NVRAM') + ram: int = Field(..., title='Host RAM') + startup_config: str = Field(..., title='Config loaded at startup') + + +class Chassis(Enum): + + chassis_1720 = '1720' + chassis_1721 = '1721' + chassis_1750 = '1750' + chassis_1751 = '1751' + chassis_1760 = '1760' + chassis_2610 = '2610' + chassis_2620 = '2620' + chassis_2610XM = '2610XM' + chassis_2620XM = '2620XM' + chassis_2650XM = '2650XM' + chassis_2621 = '2621' + chassis_2611XM = '2611XM' + chassis_2621XM = '2621XM' + chassis_2651XM = '2651XM' + chassis_3620 = '3620' + chassis_3640 = '3640' + chassis_3660 = '3660' + + +class Platform(Enum): + + c1700 = 'c1700' + c2600 = 'c2600' + c2691 = 'c2691' + c3725 = 'c3725' + c3745 = 'c3745' + c3600 = 'c3600' + c7200 = 'c7200' + + +class Midplane(Enum): + + std = 'std' + vxr = 'vxr' + + +class Npe(Enum): + + npe_100 = 'npe-100' + npe_150 = 'npe-150' + npe_175 = 'npe-175' + npe_200 = 'npe-200' + npe_225 = 'npe-225' + npe_300 = 'npe-300' + npe_400 = 'npe-400' + npe_g2 = 'npe-g2' + + +class AdapterType(Enum): + + e1000 = 'e1000' + e1000_82544gc = 'e1000-82544gc' + e1000_82545em = 'e1000-82545em' + e1000e = 'e1000e' + i82550 = 'i82550' + i82551 = 'i82551' + i82557a = 'i82557a' + i82557b = 'i82557b' + i82557c = 'i82557c' + i82558a = 'i82558a' + i82558b = 'i82558b' + i82559a = 'i82559a' + i82559b = 'i82559b' + i82559c = 'i82559c' + i82559er = 'i82559er' + i82562 = 'i82562' + i82801 = 'i82801' + ne2k_pci = 'ne2k_pci' + pcnet = 'pcnet' + rocker = 'rocker' + rtl8139 = 'rtl8139' + virtio = 'virtio' + virtio_net_pci = 'virtio-net-pci' + vmxnet3 = 'vmxnet3' + + +class DiskInterface(Enum): + + ide = 'ide' + sata = 'sata' + nvme = 'nvme' + scsi = 'scsi' + sd = 'sd' + mtd = 'mtd' + floppy = 'floppy' + pflash = 'pflash' + virtio = 'virtio' + none = 'none' + + +class Arch(Enum): + + aarch64 = 'aarch64' + alpha = 'alpha' + arm = 'arm' + cris = 'cris' + i386 = 'i386' + lm32 = 'lm32' + m68k = 'm68k' + microblaze = 'microblaze' + microblazeel = 'microblazeel' + mips = 'mips' + mips64 = 'mips64' + mips64el = 'mips64el' + mipsel = 'mipsel' + moxie = 'moxie' + or32 = 'or32' + ppc = 'ppc' + ppc64 = 'ppc64' + ppcemb = 'ppcemb' + s390x = 's390x' + sh4 = 'sh4' + sh4eb = 'sh4eb' + sparc = 'sparc' + sparc64 = 'sparc64' + tricore = 'tricore' + unicore32 = 'unicore32' + x86_64 = 'x86_64' + xtensa = 'xtensa' + xtensaeb = 'xtensaeb' + + +class ConsoleType1(Enum): + + telnet = 'telnet' + vnc = 'vnc' + spice = 'spice' + spice_agent = 'spice+agent' + none = 'none' + + +class BootPriority(Enum): + + c = 'c' + d = 'd' + n = 'n' + cn = 'cn' + cd = 'cd' + dn = 'dn' + dc = 'dc' + nc = 'nc' + nd = 'nd' + + +class Kvm(Enum): + + require = 'require' + allow = 'allow' + disable = 'disable' + + +class ProcessPriority(Enum): + + realtime = 'realtime' + very_high = 'very high' + high = 'high' + normal = 'normal' + low = 'low' + very_low = 'very low' + null = 'null' + + +class Qemu(BaseModel): + + adapter_type: AdapterType = Field(..., title='Type of network adapter') + adapters: int = Field(..., title='Number of adapters') + ram: int = Field(..., title='Ram allocated to the appliance (MB)') + cpus: Optional[int] = Field(None, title='Number of Virtual CPU') + hda_disk_interface: Optional[DiskInterface] = Field( + None, title='Disk interface for the installed hda_disk_image' + ) + hdb_disk_interface: Optional[DiskInterface] = Field( + None, title='Disk interface for the installed hdb_disk_image' + ) + hdc_disk_interface: Optional[DiskInterface] = Field( + None, title='Disk interface for the installed hdc_disk_image' + ) + hdd_disk_interface: Optional[DiskInterface] = Field( + None, title='Disk interface for the installed hdd_disk_image' + ) + arch: Arch = Field(..., title='Architecture emulated') + console_type: ConsoleType1 = Field( + ..., title='Type of console connection for the administration of the appliance' + ) + boot_priority: Optional[BootPriority] = Field( + None, + title='Disk boot priority. Refer to -boot option in qemu manual for more details.', + ) + kernel_command_line: Optional[str] = Field( + None, title='Command line parameters send to the kernel' + ) + kvm: Kvm = Field(..., title='KVM requirements') + options: Optional[str] = Field( + None, title='Optional additional qemu command line options' + ) + cpu_throttling: Optional[confloat(ge=0.0, le=100.0)] = Field( + None, title='Throttle the CPU' + ) + process_priority: Optional[ProcessPriority] = Field( + None, title='Process priority for QEMU' + ) + + +class Compression(Enum): + + bzip2 = 'bzip2' + gzip = 'gzip' + lzma = 'lzma' + xz = 'xz' + rar = 'rar' + zip = 'zip' + field_7z = '7z' + + +class ApplianceImage(BaseModel): + + filename: str = Field(..., title='Filename') + version: str = Field(..., title='Version of the file') + md5sum: str = Field(..., title='md5sum of the file', regex='^[a-f0-9]{32}$') + filesize: int = Field(..., title='File size in bytes') + download_url: Optional[Union[AnyUrl, constr(max_length=0)]] = Field( + None, title='Download url where you can download the appliance from a browser' + ) + direct_download_url: Optional[Union[AnyUrl, constr(max_length=0)]] = Field( + None, + title='Optional. Non authenticated url to the image file where you can download the image.', + ) + compression: Optional[Compression] = Field( + None, title='Optional, compression type of direct download url image.' + ) + + +class ApplianceVersionImages(BaseModel): + + kernel_image: Optional[str] = Field(None, title='Kernel image') + initrd: Optional[str] = Field(None, title='Initrd disk image') + image: Optional[str] = Field(None, title='OS image') + bios_image: Optional[str] = Field(None, title='Bios image') + hda_disk_image: Optional[str] = Field(None, title='Hda disk image') + hdb_disk_image: Optional[str] = Field(None, title='Hdc disk image') + hdc_disk_image: Optional[str] = Field(None, title='Hdd disk image') + hdd_disk_image: Optional[str] = Field(None, title='Hdd diskimage') + cdrom_image: Optional[str] = Field(None, title='cdrom image') + + +class ApplianceVersion(BaseModel): + + name: str = Field(..., title='Name of the version') + idlepc: Optional[str] = Field(None, regex='^0x[0-9a-f]{8}') + images: Optional[ApplianceVersionImages] = Field(None, title='Images used for this version') + + +class DynamipsSlot(Enum): + + C7200_IO_2FE = 'C7200-IO-2FE' + C7200_IO_FE = 'C7200-IO-FE' + C7200_IO_GE_E = 'C7200-IO-GE-E' + NM_16ESW = 'NM-16ESW' + NM_1E = 'NM-1E' + NM_1FE_TX = 'NM-1FE-TX' + NM_4E = 'NM-4E' + NM_4T = 'NM-4T' + PA_2FE_TX = 'PA-2FE-TX' + PA_4E = 'PA-4E' + PA_4T_ = 'PA-4T+' + PA_8E = 'PA-8E' + PA_8T = 'PA-8T' + PA_A1 = 'PA-A1' + PA_FE_TX = 'PA-FE-TX' + PA_GE = 'PA-GE' + PA_POS_OC3 = 'PA-POS-OC3' + C2600_MB_2FE = 'C2600-MB-2FE' + C2600_MB_1E = 'C2600-MB-1E' + C1700_MB_1FE = 'C1700-MB-1FE' + C2600_MB_2E = 'C2600-MB-2E' + C2600_MB_1FE = 'C2600-MB-1FE' + C1700_MB_WIC1 = 'C1700-MB-WIC1' + GT96100_FE = 'GT96100-FE' + Leopard_2FE = 'Leopard-2FE' + _ = '' + + +class DynamipsWic(Enum): + + WIC_1ENET = 'WIC-1ENET' + WIC_1T = 'WIC-1T' + WIC_2T = 'WIC-2T' + + +class Dynamips(BaseModel): + + chassis: Optional[Chassis] = Field(None, title='Chassis type') + platform: Platform = Field(..., title='Platform type') + ram: conint(ge=1) = Field(..., title='Amount of ram') + nvram: conint(ge=1) = Field(..., title='Amount of nvram') + startup_config: Optional[str] = Field(None, title='Config loaded at startup') + wic0: Optional[DynamipsWic] = None + wic1: Optional[DynamipsWic] = None + wic2: Optional[DynamipsWic] = None + slot0: Optional[DynamipsSlot] = None + slot1: Optional[DynamipsSlot] = None + slot2: Optional[DynamipsSlot] = None + slot3: Optional[DynamipsSlot] = None + slot4: Optional[DynamipsSlot] = None + slot5: Optional[DynamipsSlot] = None + slot6: Optional[DynamipsSlot] = None + midplane: Optional[Midplane] = None + npe: Optional[Npe] = None + + +class Appliance(BaseModel): + + appliance_id: UUID = Field(..., title='Appliance ID') + name: str = Field(..., title='Appliance name') + category: Category = Field(..., title='Category of the appliance') + description: str = Field( + ..., title='Description of the appliance. Could be a marketing description' + ) + vendor_name: str = Field(..., title='Name of the vendor') + vendor_url: Union[AnyUrl, constr(max_length=0)] = Field(..., title='Website of the vendor') + documentation_url: Optional[Union[AnyUrl, constr(max_length=0)]] = Field( + None, + title='An optional documentation for using the appliance on vendor website', + ) + product_name: str = Field(..., title='Product name') + product_url: Optional[Union[AnyUrl, constr(max_length=0)]] = Field( + None, title='An optional product url on vendor website' + ) + registry_version: RegistryVersion = Field( + ..., title='Version of the registry compatible with this appliance' + ) + status: Status = Field(..., title='Document if the appliance is working or not') + availability: Optional[Availability] = Field( + None, + title='About image availability: can be downloaded directly; download requires a free registration; paid but a trial version (time or feature limited) is available; not available publicly', + ) + maintainer: str = Field(..., title='Maintainer name') + maintainer_email: Union[EmailStr, constr(max_length=0)] = Field(..., title='Maintainer email') + usage: Optional[str] = Field(None, title='How to use the appliance') + symbol: Optional[str] = Field(None, title='An optional symbol for the appliance') + first_port_name: Optional[str] = Field( + None, title='Optional name of the first networking port example: eth0' + ) + port_name_format: Optional[str] = Field( + None, title='Optional formating of the networking port example: eth{0}' + ) + port_segment_size: Optional[int] = Field( + None, + title='Optional port segment size. A port segment is a block of port. For example Ethernet0/0 Ethernet0/1 is the module 0 with a port segment size of 2', + ) + linked_clone: Optional[bool] = Field( + None, title="False if you don't want to use a single image for all nodes" + ) + docker: Optional[Docker] = Field(None, title='Docker specific options') + iou: Optional[Iou] = Field(None, title='IOU specific options') + dynamips: Optional[Dynamips] = Field(None, title='Dynamips specific options') + qemu: Optional[Qemu] = Field(None, title='Qemu specific options') + images: Optional[List[ApplianceImage]] = Field(None, title='Images for this appliance') + versions: Optional[List[ApplianceVersion]] = Field(None, title='Versions of the appliance') diff --git a/gns3server/schemas/controller/images.py b/gns3server/schemas/controller/images.py new file mode 100644 index 00000000..bee6621e --- /dev/null +++ b/gns3server/schemas/controller/images.py @@ -0,0 +1,45 @@ +# +# Copyright (C) 2021 GNS3 Technologies Inc. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +from pydantic import BaseModel, Field +from enum import Enum + +from .base import DateTimeModelMixin + + +class ImageType(str, Enum): + + qemu = "qemu" + ios = "ios" + iou = "iou" + + +class ImageBase(BaseModel): + """ + Common image properties. + """ + + filename: str = Field(..., description="Image name") + image_type: ImageType = Field(..., description="Image type") + image_size: int = Field(..., description="Image size in bytes") + checksum: str = Field(..., description="Checksum value") + checksum_algorithm: str = Field(..., description="Checksum algorithm") + + +class Image(DateTimeModelMixin, ImageBase): + + class Config: + orm_mode = True diff --git a/gns3server/schemas/controller/templates/__init__.py b/gns3server/schemas/controller/templates/__init__.py index 74866b2e..14db9982 100644 --- a/gns3server/schemas/controller/templates/__init__.py +++ b/gns3server/schemas/controller/templates/__init__.py @@ -41,6 +41,7 @@ class TemplateBase(BaseModel): template_id: Optional[UUID] = None name: Optional[str] = None + version: Optional[str] = None category: Optional[Category] = None default_name_format: Optional[str] = None symbol: Optional[str] = None diff --git a/gns3server/schemas/controller/templates/qemu_templates.py b/gns3server/schemas/controller/templates/qemu_templates.py index f69eb23a..68645595 100644 --- a/gns3server/schemas/controller/templates/qemu_templates.py +++ b/gns3server/schemas/controller/templates/qemu_templates.py @@ -74,7 +74,6 @@ class QemuTemplate(TemplateBase): kernel_image: Optional[str] = Field("", description="QEMU kernel image path") bios_image: Optional[str] = Field("", description="QEMU bios image path") kernel_command_line: Optional[str] = Field("", description="QEMU kernel command line") - legacy_networking: Optional[bool] = Field(False, description="Use QEMU legagy networking commands (-net syntax)") replicate_network_connection_state: Optional[bool] = Field( True, description="Replicate the network connection state for links in Qemu" ) diff --git a/gns3server/services/templates.py b/gns3server/services/templates.py index c36bfeb6..569f70e8 100644 --- a/gns3server/services/templates.py +++ b/gns3server/services/templates.py @@ -14,6 +14,7 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . +import os import uuid import pydantic @@ -22,9 +23,10 @@ from fastapi.encoders import jsonable_encoder from typing import List from gns3server import schemas +import gns3server.db.models as models from gns3server.db.repositories.templates import TemplatesRepository -from gns3server.controller import Controller from gns3server.controller.controller_error import ( + ControllerError, ControllerBadRequestError, ControllerNotFoundError, ControllerForbiddenError, @@ -56,7 +58,7 @@ DYNAMIPS_PLATFORM_TO_SHEMA = { # built-in templates have their compute_id set to None to tell clients to select a compute BUILTIN_TEMPLATES = [ { - "template_id": uuid.uuid3(uuid.NAMESPACE_DNS, "cloud"), + "template_id": uuid.uuid5(uuid.NAMESPACE_X500, "cloud"), "template_type": "cloud", "name": "Cloud", "default_name_format": "Cloud{0}", @@ -66,7 +68,7 @@ BUILTIN_TEMPLATES = [ "builtin": True, }, { - "template_id": uuid.uuid3(uuid.NAMESPACE_DNS, "nat"), + "template_id": uuid.uuid5(uuid.NAMESPACE_X500, "nat"), "template_type": "nat", "name": "NAT", "default_name_format": "NAT{0}", @@ -76,7 +78,7 @@ BUILTIN_TEMPLATES = [ "builtin": True, }, { - "template_id": uuid.uuid3(uuid.NAMESPACE_DNS, "vpcs"), + "template_id": uuid.uuid5(uuid.NAMESPACE_X500, "vpcs"), "template_type": "vpcs", "name": "VPCS", "default_name_format": "PC{0}", @@ -87,7 +89,7 @@ BUILTIN_TEMPLATES = [ "builtin": True, }, { - "template_id": uuid.uuid3(uuid.NAMESPACE_DNS, "ethernet_switch"), + "template_id": uuid.uuid5(uuid.NAMESPACE_X500, "ethernet_switch"), "template_type": "ethernet_switch", "name": "Ethernet switch", "console_type": "none", @@ -98,7 +100,7 @@ BUILTIN_TEMPLATES = [ "builtin": True, }, { - "template_id": uuid.uuid3(uuid.NAMESPACE_DNS, "ethernet_hub"), + "template_id": uuid.uuid5(uuid.NAMESPACE_X500, "ethernet_hub"), "template_type": "ethernet_hub", "name": "Ethernet hub", "default_name_format": "Hub{0}", @@ -108,7 +110,7 @@ BUILTIN_TEMPLATES = [ "builtin": True, }, { - "template_id": uuid.uuid3(uuid.NAMESPACE_DNS, "frame_relay_switch"), + "template_id": uuid.uuid5(uuid.NAMESPACE_X500, "frame_relay_switch"), "template_type": "frame_relay_switch", "name": "Frame Relay switch", "default_name_format": "FRSW{0}", @@ -118,7 +120,7 @@ BUILTIN_TEMPLATES = [ "builtin": True, }, { - "template_id": uuid.uuid3(uuid.NAMESPACE_DNS, "atm_switch"), + "template_id": uuid.uuid5(uuid.NAMESPACE_X500, "atm_switch"), "template_type": "atm_switch", "name": "ATM switch", "default_name_format": "ATMSW{0}", @@ -131,9 +133,11 @@ BUILTIN_TEMPLATES = [ class TemplatesService: + def __init__(self, templates_repo: TemplatesRepository): self._templates_repo = templates_repo + from gns3server.controller import Controller self._controller = Controller.instance() def get_builtin_template(self, template_id: UUID) -> dict: @@ -152,8 +156,53 @@ class TemplatesService: templates.append(jsonable_encoder(builtin_template)) return templates + async def _find_image(self, image_path: str): + + image = await self._templates_repo.get_image(image_path) + if not image or not os.path.exists(image.path): + raise ControllerNotFoundError(f"Image '{image_path}' could not be found") + return image + + async def _find_images(self, template_type: str, settings: dict) -> List[models.Image]: + + images_to_add_to_template = [] + if template_type == "dynamips": + if settings["image"]: + image = await self._find_image(settings["image"]) + if image.image_type != "ios": + raise ControllerBadRequestError( + f"Image '{image.filename}' type is not 'ios' but '{image.image_type}'" + ) + images_to_add_to_template.append(image) + elif template_type == "iou": + if settings["path"]: + image = await self._find_image(settings["path"]) + if image.image_type != "iou": + raise ControllerBadRequestError( + f"Image '{image.filename}' type is not 'iou' but '{image.image_type}'" + ) + images_to_add_to_template.append(image) + elif template_type == "qemu": + for key, value in settings.items(): + if key.endswith("_image") and value: + image = await self._find_image(value) + if image.image_type != "qemu": + raise ControllerBadRequestError( + f"Image '{image.filename}' type is not 'qemu' but '{image.image_type}'" + ) + if image not in images_to_add_to_template: + images_to_add_to_template.append(image) + return images_to_add_to_template + async def create_template(self, template_create: schemas.TemplateCreate) -> dict: + if await self._templates_repo.get_template_by_name_and_version(template_create.name, template_create.version): + if template_create.version: + raise ControllerError(f"A template with name '{template_create.name}' and " + f"version {template_create.version} already exists") + else: + raise ControllerError(f"A template with name '{template_create.name}' already exists") + try: # get the default template settings template_settings = jsonable_encoder(template_create, exclude_unset=True) @@ -167,7 +216,11 @@ class TemplatesService: settings = dynamips_template_settings_with_defaults.dict() except pydantic.ValidationError as e: raise ControllerBadRequestError(f"JSON schema error received while creating new template: {e}") + + images_to_add_to_template = await self._find_images(template_create.template_type, settings) db_template = await self._templates_repo.create_template(template_create.template_type, settings) + for image in images_to_add_to_template: + await self._templates_repo.add_image_to_template(db_template.template_id, image) template = db_template.asjson() self._controller.notification.controller_emit("template.created", template) return template @@ -183,13 +236,34 @@ class TemplatesService: raise ControllerNotFoundError(f"Template '{template_id}' not found") return template + async def _remove_image(self, template_id: UUID, image_path:str) -> None: + + image = await self._templates_repo.get_image(image_path) + await self._templates_repo.remove_image_from_template(template_id, image) + async def update_template(self, template_id: UUID, template_update: schemas.TemplateUpdate) -> dict: if self.get_builtin_template(template_id): raise ControllerForbiddenError(f"Template '{template_id}' cannot be updated because it is built-in") - db_template = await self._templates_repo.update_template(template_id, template_update) + template_settings = jsonable_encoder(template_update, exclude_unset=True) + + db_template = await self._templates_repo.get_template(template_id) if not db_template: raise ControllerNotFoundError(f"Template '{template_id}' not found") + + images_to_add_to_template = await self._find_images(db_template.template_type, template_settings) + if db_template.template_type == "dynamips" and "image" in template_settings: + await self._remove_image(db_template.template_id, db_template.image) + elif db_template.template_type == "iou" and "path" in template_settings: + await self._remove_image(db_template.template_id, db_template.path) + elif db_template.template_type == "qemu": + for key in template_update.dict().keys(): + if key.endswith("_image") and key in template_settings: + await self._remove_image(db_template.template_id, db_template.__dict__[key]) + + db_template = await self._templates_repo.update_template(db_template, template_settings) + for image in images_to_add_to_template: + await self._templates_repo.add_image_to_template(db_template.template_id, image) template = db_template.asjson() self._controller.notification.controller_emit("template.updated", template) return template diff --git a/gns3server/static/web-ui/26.a7470e50128ddf7860c4.js b/gns3server/static/web-ui/26.a7470e50128ddf7860c4.js deleted file mode 100644 index 51fad865..00000000 --- a/gns3server/static/web-ui/26.a7470e50128ddf7860c4.js +++ /dev/null @@ -1 +0,0 @@ -(self.webpackChunkgns3_web_ui=self.webpackChunkgns3_web_ui||[]).push([[26],{91026:function(t,e,n){"use strict";n.r(e),n.d(e,{TopologySummaryComponent:function(){return F}});var i=n(37602),o=n(96852),s=n(14200),r=n(36889),a=n(3941),p=n(15132),c=n(40098),l=n(39095),u=n(88802),g=n(73044),d=n(59412),h=n(93386);function m(t,e){if(1&t){var n=i.EpF();i.TgZ(0,"div",2),i.NdJ("mousemove",function(t){return i.CHM(n),i.oxw().dragWidget(t)},!1,i.evT)("mouseup",function(){return i.CHM(n),i.oxw().toggleDragging(!1)},!1,i.evT),i.qZA()}}function f(t,e){1&t&&(i.O4$(),i.TgZ(0,"svg",28),i._UZ(1,"rect",29),i.qZA())}function y(t,e){1&t&&(i.O4$(),i.TgZ(0,"svg",28),i._UZ(1,"rect",30),i.qZA())}function b(t,e){1&t&&(i.O4$(),i.TgZ(0,"svg",28),i._UZ(1,"rect",31),i.qZA())}function v(t,e){if(1&t&&(i.TgZ(0,"div"),i._uU(1),i.qZA()),2&t){var n=i.oxw().$implicit;i.xp6(1),i.lnq(" ",n.console_type," ",n.console_host,":",n.console," ")}}function x(t,e){1&t&&(i.TgZ(0,"div"),i._uU(1," none "),i.qZA())}function Z(t,e){if(1&t&&(i.TgZ(0,"div",25),i.TgZ(1,"div"),i.YNc(2,f,2,0,"svg",26),i.YNc(3,y,2,0,"svg",26),i.YNc(4,b,2,0,"svg",26),i._uU(5),i.qZA(),i.YNc(6,v,2,3,"div",27),i.YNc(7,x,2,0,"div",27),i.qZA()),2&t){var n=e.$implicit;i.xp6(2),i.Q6J("ngIf","started"===n.status),i.xp6(1),i.Q6J("ngIf","suspended"===n.status),i.xp6(1),i.Q6J("ngIf","stopped"===n.status),i.xp6(1),i.hij(" ",n.name," "),i.xp6(1),i.Q6J("ngIf",null!=n.console&&null!=n.console&&"none"!=n.console_type),i.xp6(1),i.Q6J("ngIf",null==n.console||"none"===n.console_type)}}function C(t,e){1&t&&(i.O4$(),i.TgZ(0,"svg",28),i._UZ(1,"rect",29),i.qZA())}function S(t,e){1&t&&(i.O4$(),i.TgZ(0,"svg",28),i._UZ(1,"rect",31),i.qZA())}function _(t,e){if(1&t&&(i.TgZ(0,"div",25),i.TgZ(1,"div"),i.YNc(2,C,2,0,"svg",26),i.YNc(3,S,2,0,"svg",26),i._uU(4),i.qZA(),i.TgZ(5,"div"),i._uU(6),i.qZA(),i.TgZ(7,"div"),i._uU(8),i.qZA(),i.qZA()),2&t){var n=e.$implicit,o=i.oxw(2);i.xp6(2),i.Q6J("ngIf",n.connected),i.xp6(1),i.Q6J("ngIf",!n.connected),i.xp6(1),i.hij(" ",n.name," "),i.xp6(2),i.hij(" ",n.host," "),i.xp6(2),i.hij(" ",o.server.location," ")}}var w=function(t){return{lightTheme:t}},T=function(){return{right:!0,left:!0,bottom:!0,top:!0}};function E(t,e){if(1&t){var n=i.EpF();i.TgZ(0,"div",3),i.NdJ("mousedown",function(){return i.CHM(n),i.oxw().toggleDragging(!0)})("resizeStart",function(){return i.CHM(n),i.oxw().toggleDragging(!1)})("resizeEnd",function(t){return i.CHM(n),i.oxw().onResizeEnd(t)}),i.TgZ(1,"div",4),i.TgZ(2,"mat-tab-group"),i.TgZ(3,"mat-tab",5),i.NdJ("click",function(){return i.CHM(n),i.oxw().toggleTopologyVisibility(!0)}),i.TgZ(4,"div",6),i.TgZ(5,"div",7),i.TgZ(6,"mat-select",8),i.TgZ(7,"mat-optgroup",9),i.TgZ(8,"mat-option",10),i.NdJ("onSelectionChange",function(){return i.CHM(n),i.oxw().applyStatusFilter("started")}),i._uU(9,"started"),i.qZA(),i.TgZ(10,"mat-option",11),i.NdJ("onSelectionChange",function(){return i.CHM(n),i.oxw().applyStatusFilter("suspended")}),i._uU(11,"suspended"),i.qZA(),i.TgZ(12,"mat-option",12),i.NdJ("onSelectionChange",function(){return i.CHM(n),i.oxw().applyStatusFilter("stopped")}),i._uU(13,"stopped"),i.qZA(),i.qZA(),i.TgZ(14,"mat-optgroup",13),i.TgZ(15,"mat-option",14),i.NdJ("onSelectionChange",function(){return i.CHM(n),i.oxw().applyCaptureFilter("capture")}),i._uU(16,"active capture(s)"),i.qZA(),i.TgZ(17,"mat-option",15),i.NdJ("onSelectionChange",function(){return i.CHM(n),i.oxw().applyCaptureFilter("packet")}),i._uU(18,"active packet captures"),i.qZA(),i.qZA(),i.qZA(),i.qZA(),i.TgZ(19,"div",16),i.TgZ(20,"mat-select",17),i.NdJ("selectionChange",function(){return i.CHM(n),i.oxw().setSortingOrder()})("valueChange",function(t){return i.CHM(n),i.oxw().sortingOrder=t}),i.TgZ(21,"mat-option",18),i._uU(22,"sort by name ascending"),i.qZA(),i.TgZ(23,"mat-option",19),i._uU(24,"sort by name descending"),i.qZA(),i.qZA(),i.qZA(),i._UZ(25,"mat-divider",20),i.TgZ(26,"div",21),i.YNc(27,Z,8,6,"div",22),i.qZA(),i.qZA(),i.qZA(),i.TgZ(28,"mat-tab",23),i.NdJ("click",function(){return i.CHM(n),i.oxw().toggleTopologyVisibility(!1)}),i.TgZ(29,"div",6),i.TgZ(30,"div",24),i.YNc(31,_,9,5,"div",22),i.qZA(),i.qZA(),i.qZA(),i.qZA(),i.qZA(),i.qZA()}if(2&t){var o=i.oxw();i.Q6J("ngStyle",o.style)("ngClass",i.VKq(9,w,o.isLightThemeEnabled))("validateResize",o.validate)("resizeEdges",i.DdM(11,T))("enableGhostResize",!0),i.xp6(20),i.Q6J("value",o.sortingOrder),i.xp6(6),i.Q6J("ngStyle",o.styleInside),i.xp6(1),i.Q6J("ngForOf",o.filteredNodes),i.xp6(4),i.Q6J("ngForOf",o.computes)}}var F=function(){function t(t,e,n,o,s){this.nodesDataSource=t,this.projectService=e,this.computeService=n,this.linksDataSource=o,this.themeService=s,this.closeTopologySummary=new i.vpe,this.style={},this.styleInside={height:"280px"},this.subscriptions=[],this.nodes=[],this.filteredNodes=[],this.sortingOrder="asc",this.startedStatusFilterEnabled=!1,this.suspendedStatusFilterEnabled=!1,this.stoppedStatusFilterEnabled=!1,this.captureFilterEnabled=!1,this.packetFilterEnabled=!1,this.computes=[],this.isTopologyVisible=!0,this.isDraggingEnabled=!1,this.isLightThemeEnabled=!1}return t.prototype.ngOnInit=function(){var t=this;this.isLightThemeEnabled="light"===this.themeService.getActualTheme(),this.subscriptions.push(this.nodesDataSource.changes.subscribe(function(e){t.nodes=e,t.nodes.forEach(function(e){"0.0.0.0"!==e.console_host&&"0:0:0:0:0:0:0:0"!==e.console_host&&"::"!==e.console_host||(e.console_host=t.server.host)}),t.filteredNodes=e.sort("asc"===t.sortingOrder?t.compareAsc:t.compareDesc)})),this.projectService.getStatistics(this.server,this.project.project_id).subscribe(function(e){t.projectsStatistics=e}),this.computeService.getComputes(this.server).subscribe(function(e){t.computes=e}),this.style={top:"60px",right:"0px",width:"320px",height:"400px"}},t.prototype.toggleDragging=function(t){this.isDraggingEnabled=t},t.prototype.dragWidget=function(t){var e=Number(t.movementX),n=Number(t.movementY),i=Number(this.style.width.split("px")[0]),o=Number(this.style.height.split("px")[0]),s=Number(this.style.top.split("px")[0])+n;if(this.style.left){var r=Number(this.style.left.split("px")[0])+e;this.style={position:"fixed",left:r+"px",top:s+"px",width:i+"px",height:o+"px"}}else{var a=Number(this.style.right.split("px")[0])-e;this.style={position:"fixed",right:a+"px",top:s+"px",width:i+"px",height:o+"px"}}},t.prototype.validate=function(t){return!(t.rectangle.width&&t.rectangle.height&&(t.rectangle.width<290||t.rectangle.height<260))},t.prototype.onResizeEnd=function(t){this.style={position:"fixed",left:t.rectangle.left+"px",top:t.rectangle.top+"px",width:t.rectangle.width+"px",height:t.rectangle.height+"px"},this.styleInside={height:t.rectangle.height-120+"px"}},t.prototype.toggleTopologyVisibility=function(t){this.isTopologyVisible=t},t.prototype.compareAsc=function(t,e){return t.name - + @@ -46,6 +46,6 @@ gtag('config', 'G-5D6FZL9923'); - + \ No newline at end of file diff --git a/gns3server/static/web-ui/main.4d8bd51ab8b8682cb3f0.js b/gns3server/static/web-ui/main.4d8bd51ab8b8682cb3f0.js deleted file mode 100644 index 1ddd1227..00000000 --- a/gns3server/static/web-ui/main.4d8bd51ab8b8682cb3f0.js +++ /dev/null @@ -1 +0,0 @@ -(self.webpackChunkgns3_web_ui=self.webpackChunkgns3_web_ui||[]).push([[179],{98255:function(e){function t(e){return Promise.resolve().then(function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t})}t.keys=function(){return[]},t.resolve=t,t.id=98255,e.exports=t},82908:function(e){e.exports=function(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);ne.length)&&(t=e.length);for(var n=0,i=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,s=!0,l=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){l=!0,a=e},f:function(){try{s||null==n.return||n.return()}finally{if(l)throw a}}}}},37859:function(e,t,n){"use strict";n.d(t,{Z:function(){return a}});var i=n(12558),r=n(87660),o=n(38852);function a(e){var t=(0,r.Z)();return function(){var n,r=(0,i.Z)(e);if(t){var a=(0,i.Z)(this).constructor;n=Reflect.construct(r,arguments,a)}else n=r.apply(this,arguments);return(0,o.Z)(this,n)}}},91035:function(e,t,n){"use strict";function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}n.d(t,{Z:function(){return i}})},51751:function(e,t,n){"use strict";n.d(t,{Z:function(){return r}});var i=n(12558);function r(e,t,n){return(r="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=(0,i.Z)(e)););return e}(e,t);if(r){var o=Object.getOwnPropertyDescriptor(r,t);return o.get?o.get.call(n):o.value}})(e,t,n||e)}},12558:function(e,t,n){"use strict";function i(e){return(i=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}n.d(t,{Z:function(){return i}})},49843:function(e,t,n){"use strict";n.d(t,{Z:function(){return r}});var i=n(84937);function r(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&(0,i.Z)(e,t)}},87660:function(e,t,n){"use strict";function i(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}n.d(t,{Z:function(){return i}})},84080:function(e,t,n){"use strict";function i(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}n.d(t,{Z:function(){return i}})},20983:function(e,t,n){"use strict";function i(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}n.d(t,{Z:function(){return i}})},38852:function(e,t,n){"use strict";function i(e){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}n.d(t,{Z:function(){return o}});var r=n(3574);function o(e,t){return!t||"object"!==i(t)&&"function"!=typeof t?(0,r.Z)(e):t}},84937:function(e,t,n){"use strict";function i(e,t){return(i=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}n.d(t,{Z:function(){return i}})},10270:function(e,t,n){"use strict";n.d(t,{Z:function(){return a}});var i=n(75905),r=n(92749),o=n(20983);function a(e,t){return(0,i.Z)(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var i,r,o=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(i=n.next()).done)&&(o.push(i.value),!t||o.length!==t);a=!0);}catch(l){s=!0,r=l}finally{try{a||null==n.return||n.return()}finally{if(s)throw r}}return o}}(e,t)||(0,r.Z)(e,t)||(0,o.Z)()}},76262:function(e,t,n){"use strict";n.d(t,{Z:function(){return s}});var i=n(75905),r=n(84080),o=n(92749),a=n(20983);function s(e){return(0,i.Z)(e)||(0,r.Z)(e)||(0,o.Z)(e)||(0,a.Z)()}},25801:function(e,t,n){"use strict";n.d(t,{Z:function(){return a}});var i=n(78495),r=n(84080),o=n(92749);function a(e){return function(e){if(Array.isArray(e))return(0,i.Z)(e)}(e)||(0,r.Z)(e)||(0,o.Z)(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}},92749:function(e,t,n){"use strict";n.d(t,{Z:function(){return r}});var i=n(78495);function r(e,t){if(e){if("string"==typeof e)return(0,i.Z)(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?(0,i.Z)(e,t):void 0}}},35036:function(e){e.exports=function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var i,r,o=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(i=n.next()).done)&&(o.push(i.value),!t||o.length!==t);a=!0);}catch(l){s=!0,r=l}finally{try{a||null==n.return||n.return()}finally{if(s)throw r}}return o}},e.exports.default=e.exports,e.exports.__esModule=!0},13969:function(e){e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},e.exports.default=e.exports,e.exports.__esModule=!0},6326:function(e,t,n){var i=n(36457),r=n(35036),o=n(54850),a=n(13969);e.exports=function(e,t){return i(e)||r(e,t)||o(e,t)||a()},e.exports.default=e.exports,e.exports.__esModule=!0},54850:function(e,t,n){var i=n(82908);e.exports=function(e,t){if(e){if("string"==typeof e)return i(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?i(e,t):void 0}},e.exports.default=e.exports,e.exports.__esModule=!0},26552:function(e,t,n){e.exports=n(55590)},61855:function(e,t,n){"use strict";n.d(t,{ZT:function(){return r},mG:function(){return o},Jh:function(){return a},ev:function(){return s}});var i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)};function r(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}function o(e,t,n,i){return new(n||(n=Promise))(function(r,o){function a(e){try{l(i.next(e))}catch(t){o(t)}}function s(e){try{l(i.throw(e))}catch(t){o(t)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}l((i=i.apply(e,t||[])).next())})}function a(e,t){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]1&&void 0!==arguments[1]?arguments[1]:null;return{type:4,styles:t,timings:e}}function u(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return{type:2,steps:e,options:t}}function d(e){return{type:6,styles:e,offset:null}}function h(e,t,n){return{type:0,name:e,styles:t,options:n}}function p(e){return{type:5,steps:e}}function f(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return{type:1,expr:e,animation:t,options:n}}function m(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return{type:9,options:e}}function g(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return{type:11,selector:e,animation:t,options:n}}function v(e){Promise.resolve(null).then(e)}var y=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;(0,r.Z)(this,e),this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this._position=0,this.parentPlayer=null,this.totalTime=t+n}return(0,i.Z)(e,[{key:"_onFinish",value:function(){this._finished||(this._finished=!0,this._onDoneFns.forEach(function(e){return e()}),this._onDoneFns=[])}},{key:"onStart",value:function(e){this._onStartFns.push(e)}},{key:"onDone",value:function(e){this._onDoneFns.push(e)}},{key:"onDestroy",value:function(e){this._onDestroyFns.push(e)}},{key:"hasStarted",value:function(){return this._started}},{key:"init",value:function(){}},{key:"play",value:function(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}},{key:"triggerMicrotask",value:function(){var e=this;v(function(){return e._onFinish()})}},{key:"_onStart",value:function(){this._onStartFns.forEach(function(e){return e()}),this._onStartFns=[]}},{key:"pause",value:function(){}},{key:"restart",value:function(){}},{key:"finish",value:function(){this._onFinish()}},{key:"destroy",value:function(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(function(e){return e()}),this._onDestroyFns=[])}},{key:"reset",value:function(){this._started=!1}},{key:"setPosition",value:function(e){this._position=this.totalTime?e*this.totalTime:1}},{key:"getPosition",value:function(){return this.totalTime?this._position/this.totalTime:1}},{key:"triggerCallback",value:function(e){var t="start"==e?this._onStartFns:this._onDoneFns;t.forEach(function(e){return e()}),t.length=0}}]),e}(),_=function(){function e(t){var n=this;(0,r.Z)(this,e),this._onDoneFns=[],this._onStartFns=[],this._finished=!1,this._started=!1,this._destroyed=!1,this._onDestroyFns=[],this.parentPlayer=null,this.totalTime=0,this.players=t;var i=0,o=0,a=0,s=this.players.length;0==s?v(function(){return n._onFinish()}):this.players.forEach(function(e){e.onDone(function(){++i==s&&n._onFinish()}),e.onDestroy(function(){++o==s&&n._onDestroy()}),e.onStart(function(){++a==s&&n._onStart()})}),this.totalTime=this.players.reduce(function(e,t){return Math.max(e,t.totalTime)},0)}return(0,i.Z)(e,[{key:"_onFinish",value:function(){this._finished||(this._finished=!0,this._onDoneFns.forEach(function(e){return e()}),this._onDoneFns=[])}},{key:"init",value:function(){this.players.forEach(function(e){return e.init()})}},{key:"onStart",value:function(e){this._onStartFns.push(e)}},{key:"_onStart",value:function(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(function(e){return e()}),this._onStartFns=[])}},{key:"onDone",value:function(e){this._onDoneFns.push(e)}},{key:"onDestroy",value:function(e){this._onDestroyFns.push(e)}},{key:"hasStarted",value:function(){return this._started}},{key:"play",value:function(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(function(e){return e.play()})}},{key:"pause",value:function(){this.players.forEach(function(e){return e.pause()})}},{key:"restart",value:function(){this.players.forEach(function(e){return e.restart()})}},{key:"finish",value:function(){this._onFinish(),this.players.forEach(function(e){return e.finish()})}},{key:"destroy",value:function(){this._onDestroy()}},{key:"_onDestroy",value:function(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(function(e){return e.destroy()}),this._onDestroyFns.forEach(function(e){return e()}),this._onDestroyFns=[])}},{key:"reset",value:function(){this.players.forEach(function(e){return e.reset()}),this._destroyed=!1,this._finished=!1,this._started=!1}},{key:"setPosition",value:function(e){var t=e*this.totalTime;this.players.forEach(function(e){var n=e.totalTime?Math.min(1,t/e.totalTime):1;e.setPosition(n)})}},{key:"getPosition",value:function(){var e=this.players.reduce(function(e,t){return null===e||t.totalTime>e.totalTime?t:e},null);return null!=e?e.getPosition():0}},{key:"beforeDestroy",value:function(){this.players.forEach(function(e){e.beforeDestroy&&e.beforeDestroy()})}},{key:"triggerCallback",value:function(e){var t="start"==e?this._onStartFns:this._onDoneFns;t.forEach(function(e){return e()}),t.length=0}}]),e}(),b="!"},6517:function(e,t,n){"use strict";n.d(t,{rt:function(){return ce},s1:function(){return F},$s:function(){return N},kH:function(){return re},Em:function(){return B},tE:function(){return ie},qV:function(){return Y},qm:function(){return le},Kd:function(){return ee},X6:function(){return J},yG:function(){return G}});var i=n(10270),r=n(51751),o=n(12558),a=n(49843),s=n(37859),l=n(61680),c=n(11254),u=n(40098),d=n(37602),h=n(68707),p=n(5051),f=n(90838),m=n(43161),g=n(32819),v=n(59371),y=n(57263),_=n(58780),b=n(85639),w=n(48359),S=n(18756),x=n(76161),C=n(44213),k=n(78081),T=n(15427),A=n(96798);function Z(e,t){return(e.getAttribute(t)||"").match(/\S+/g)||[]}var M="cdk-describedby-message-container",O="cdk-describedby-message",E="cdk-describedby-host",P=0,I=new Map,q=null,N=function(){var e=function(){function e(t){(0,l.Z)(this,e),this._document=t}return(0,c.Z)(e,[{key:"describe",value:function(e,t,n){if(this._canBeDescribed(e,t)){var i=D(t,n);"string"!=typeof t?(R(t),I.set(i,{messageElement:t,referenceCount:0})):I.has(i)||this._createMessageElement(t,n),this._isElementDescribedByMessage(e,i)||this._addMessageReference(e,i)}}},{key:"removeDescription",value:function(e,t,n){if(t&&this._isElementNode(e)){var i=D(t,n);if(this._isElementDescribedByMessage(e,i)&&this._removeMessageReference(e,i),"string"==typeof t){var r=I.get(i);r&&0===r.referenceCount&&this._deleteMessageElement(i)}q&&0===q.childNodes.length&&this._deleteMessagesContainer()}}},{key:"ngOnDestroy",value:function(){for(var e=this._document.querySelectorAll("[".concat(E,"]")),t=0;t-1&&t!==n._activeItemIndex&&(n._activeItemIndex=t)}})}return(0,c.Z)(e,[{key:"skipPredicate",value:function(e){return this._skipPredicateFn=e,this}},{key:"withWrap",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._wrap=e,this}},{key:"withVerticalOrientation",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._vertical=e,this}},{key:"withHorizontalOrientation",value:function(e){return this._horizontal=e,this}},{key:"withAllowedModifierKeys",value:function(e){return this._allowedModifierKeys=e,this}},{key:"withTypeAhead",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:200;return this._typeaheadSubscription.unsubscribe(),this._typeaheadSubscription=this._letterKeyStream.pipe((0,v.b)(function(t){return e._pressedLetters.push(t)}),(0,y.b)(t),(0,_.h)(function(){return e._pressedLetters.length>0}),(0,b.U)(function(){return e._pressedLetters.join("")})).subscribe(function(t){for(var n=e._getItemsArray(),i=1;i0&&void 0!==arguments[0])||arguments[0];return this._homeAndEnd=e,this}},{key:"setActiveItem",value:function(e){var t=this._activeItem;this.updateActiveItem(e),this._activeItem!==t&&this.change.next(this._activeItemIndex)}},{key:"onKeydown",value:function(e){var t=this,n=e.keyCode,i=["altKey","ctrlKey","metaKey","shiftKey"].every(function(n){return!e[n]||t._allowedModifierKeys.indexOf(n)>-1});switch(n){case g.Mf:return void this.tabOut.next();case g.JH:if(this._vertical&&i){this.setNextItemActive();break}return;case g.LH:if(this._vertical&&i){this.setPreviousItemActive();break}return;case g.SV:if(this._horizontal&&i){"rtl"===this._horizontal?this.setPreviousItemActive():this.setNextItemActive();break}return;case g.oh:if(this._horizontal&&i){"rtl"===this._horizontal?this.setNextItemActive():this.setPreviousItemActive();break}return;case g.Sd:if(this._homeAndEnd&&i){this.setFirstItemActive();break}return;case g.uR:if(this._homeAndEnd&&i){this.setLastItemActive();break}return;default:return void((i||(0,g.Vb)(e,"shiftKey"))&&(e.key&&1===e.key.length?this._letterKeyStream.next(e.key.toLocaleUpperCase()):(n>=g.A&&n<=g.Z||n>=g.xE&&n<=g.aO)&&this._letterKeyStream.next(String.fromCharCode(n))))}this._pressedLetters=[],e.preventDefault()}},{key:"activeItemIndex",get:function(){return this._activeItemIndex}},{key:"activeItem",get:function(){return this._activeItem}},{key:"isTyping",value:function(){return this._pressedLetters.length>0}},{key:"setFirstItemActive",value:function(){this._setActiveItemByIndex(0,1)}},{key:"setLastItemActive",value:function(){this._setActiveItemByIndex(this._items.length-1,-1)}},{key:"setNextItemActive",value:function(){this._activeItemIndex<0?this.setFirstItemActive():this._setActiveItemByDelta(1)}},{key:"setPreviousItemActive",value:function(){this._activeItemIndex<0&&this._wrap?this.setLastItemActive():this._setActiveItemByDelta(-1)}},{key:"updateActiveItem",value:function(e){var t=this._getItemsArray(),n="number"==typeof e?e:t.indexOf(e),i=t[n];this._activeItem=null==i?null:i,this._activeItemIndex=n}},{key:"_setActiveItemByDelta",value:function(e){this._wrap?this._setActiveInWrapMode(e):this._setActiveInDefaultMode(e)}},{key:"_setActiveInWrapMode",value:function(e){for(var t=this._getItemsArray(),n=1;n<=t.length;n++){var i=(this._activeItemIndex+e*n+t.length)%t.length;if(!this._skipPredicateFn(t[i]))return void this.setActiveItem(i)}}},{key:"_setActiveInDefaultMode",value:function(e){this._setActiveItemByIndex(this._activeItemIndex+e,e)}},{key:"_setActiveItemByIndex",value:function(e,t){var n=this._getItemsArray();if(n[e]){for(;this._skipPredicateFn(n[e]);)if(!n[e+=t])return;this.setActiveItem(e)}}},{key:"_getItemsArray",value:function(){return this._items instanceof d.n_E?this._items.toArray():this._items}}]),e}(),F=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(){return(0,l.Z)(this,n),t.apply(this,arguments)}return(0,c.Z)(n,[{key:"setActiveItem",value:function(e){this.activeItem&&this.activeItem.setInactiveStyles(),(0,r.Z)((0,o.Z)(n.prototype),"setActiveItem",this).call(this,e),this.activeItem&&this.activeItem.setActiveStyles()}}]),n}(L),B=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(){var e;return(0,l.Z)(this,n),(e=t.apply(this,arguments))._origin="program",e}return(0,c.Z)(n,[{key:"setFocusOrigin",value:function(e){return this._origin=e,this}},{key:"setActiveItem",value:function(e){(0,r.Z)((0,o.Z)(n.prototype),"setActiveItem",this).call(this,e),this.activeItem&&this.activeItem.focus(this._origin)}}]),n}(L),j=function(){var e=function(){function e(t){(0,l.Z)(this,e),this._platform=t}return(0,c.Z)(e,[{key:"isDisabled",value:function(e){return e.hasAttribute("disabled")}},{key:"isVisible",value:function(e){return function(e){return!!(e.offsetWidth||e.offsetHeight||"function"==typeof e.getClientRects&&e.getClientRects().length)}(e)&&"visible"===getComputedStyle(e).visibility}},{key:"isTabbable",value:function(e){if(!this._platform.isBrowser)return!1;var t,n=function(e){try{return e.frameElement}catch(t){return null}}((t=e).ownerDocument&&t.ownerDocument.defaultView||window);if(n){if(-1===U(n))return!1;if(!this.isVisible(n))return!1}var i=e.nodeName.toLowerCase(),r=U(e);return e.hasAttribute("contenteditable")?-1!==r:"iframe"!==i&&"object"!==i&&!(this._platform.WEBKIT&&this._platform.IOS&&!function(e){var t=e.nodeName.toLowerCase(),n="input"===t&&e.type;return"text"===n||"password"===n||"select"===t||"textarea"===t}(e))&&("audio"===i?!!e.hasAttribute("controls")&&-1!==r:"video"===i?-1!==r&&(null!==r||this._platform.FIREFOX||e.hasAttribute("controls")):e.tabIndex>=0)}},{key:"isFocusable",value:function(e,t){return function(e){return!function(e){return function(e){return"input"==e.nodeName.toLowerCase()}(e)&&"hidden"==e.type}(e)&&(function(e){var t=e.nodeName.toLowerCase();return"input"===t||"select"===t||"button"===t||"textarea"===t}(e)||function(e){return function(e){return"a"==e.nodeName.toLowerCase()}(e)&&e.hasAttribute("href")}(e)||e.hasAttribute("contenteditable")||z(e))}(e)&&!this.isDisabled(e)&&((null==t?void 0:t.ignoreVisibility)||this.isVisible(e))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(d.LFG(T.t4))},e.\u0275prov=d.Yz7({factory:function(){return new e(d.LFG(T.t4))},token:e,providedIn:"root"}),e}();function z(e){if(!e.hasAttribute("tabindex")||void 0===e.tabIndex)return!1;var t=e.getAttribute("tabindex");return"-32768"!=t&&!(!t||isNaN(parseInt(t,10)))}function U(e){if(!z(e))return null;var t=parseInt(e.getAttribute("tabindex")||"",10);return isNaN(t)?-1:t}var H=function(){function e(t,n,i,r){var o=this,a=arguments.length>4&&void 0!==arguments[4]&&arguments[4];(0,l.Z)(this,e),this._element=t,this._checker=n,this._ngZone=i,this._document=r,this._hasAttached=!1,this.startAnchorListener=function(){return o.focusLastTabbableElement()},this.endAnchorListener=function(){return o.focusFirstTabbableElement()},this._enabled=!0,a||this.attachAnchors()}return(0,c.Z)(e,[{key:"enabled",get:function(){return this._enabled},set:function(e){this._enabled=e,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(e,this._startAnchor),this._toggleAnchorTabIndex(e,this._endAnchor))}},{key:"destroy",value:function(){var e=this._startAnchor,t=this._endAnchor;e&&(e.removeEventListener("focus",this.startAnchorListener),e.parentNode&&e.parentNode.removeChild(e)),t&&(t.removeEventListener("focus",this.endAnchorListener),t.parentNode&&t.parentNode.removeChild(t)),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}},{key:"attachAnchors",value:function(){var e=this;return!!this._hasAttached||(this._ngZone.runOutsideAngular(function(){e._startAnchor||(e._startAnchor=e._createAnchor(),e._startAnchor.addEventListener("focus",e.startAnchorListener)),e._endAnchor||(e._endAnchor=e._createAnchor(),e._endAnchor.addEventListener("focus",e.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}},{key:"focusInitialElementWhenReady",value:function(e){var t=this;return new Promise(function(n){t._executeOnStable(function(){return n(t.focusInitialElement(e))})})}},{key:"focusFirstTabbableElementWhenReady",value:function(e){var t=this;return new Promise(function(n){t._executeOnStable(function(){return n(t.focusFirstTabbableElement(e))})})}},{key:"focusLastTabbableElementWhenReady",value:function(e){var t=this;return new Promise(function(n){t._executeOnStable(function(){return n(t.focusLastTabbableElement(e))})})}},{key:"_getRegionBoundary",value:function(e){for(var t=this._element.querySelectorAll("[cdk-focus-region-".concat(e,"], ")+"[cdkFocusRegion".concat(e,"], ")+"[cdk-focus-".concat(e,"]")),n=0;n=0;n--){var i=t[n].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(t[n]):null;if(i)return i}return null}},{key:"_createAnchor",value:function(){var e=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,e),e.classList.add("cdk-visually-hidden"),e.classList.add("cdk-focus-trap-anchor"),e.setAttribute("aria-hidden","true"),e}},{key:"_toggleAnchorTabIndex",value:function(e,t){e?t.setAttribute("tabindex","0"):t.removeAttribute("tabindex")}},{key:"toggleAnchors",value:function(e){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(e,this._startAnchor),this._toggleAnchorTabIndex(e,this._endAnchor))}},{key:"_executeOnStable",value:function(e){this._ngZone.isStable?e():this._ngZone.onStable.pipe((0,w.q)(1)).subscribe(e)}}]),e}(),Y=function(){var e=function(){function e(t,n,i){(0,l.Z)(this,e),this._checker=t,this._ngZone=n,this._document=i}return(0,c.Z)(e,[{key:"create",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return new H(e,this._checker,this._ngZone,this._document,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(d.LFG(j),d.LFG(d.R0b),d.LFG(u.K0))},e.\u0275prov=d.Yz7({factory:function(){return new e(d.LFG(j),d.LFG(d.R0b),d.LFG(u.K0))},token:e,providedIn:"root"}),e}();function J(e){return 0===e.offsetX&&0===e.offsetY}function G(e){var t=e.touches&&e.touches[0]||e.changedTouches&&e.changedTouches[0];return!(!t||-1!==t.identifier||null!=t.radiusX&&1!==t.radiusX||null!=t.radiusY&&1!==t.radiusY)}"undefined"!=typeof Element&∈var W=new d.OlP("cdk-input-modality-detector-options"),V={ignoreKeys:[g.zL,g.jx,g.b2,g.MW,g.JU]},Q=(0,T.i$)({passive:!0,capture:!0}),X=function(){var e=function(){function e(t,n,i,r){var o=this;(0,l.Z)(this,e),this._platform=t,this._mostRecentTarget=null,this._modality=new f.X(null),this._lastTouchMs=0,this._onKeydown=function(e){var t,n;(null===(n=null===(t=o._options)||void 0===t?void 0:t.ignoreKeys)||void 0===n?void 0:n.some(function(t){return t===e.keyCode}))||(o._modality.next("keyboard"),o._mostRecentTarget=(0,T.sA)(e))},this._onMousedown=function(e){Date.now()-o._lastTouchMs<650||(o._modality.next(J(e)?"keyboard":"mouse"),o._mostRecentTarget=(0,T.sA)(e))},this._onTouchstart=function(e){G(e)?o._modality.next("keyboard"):(o._lastTouchMs=Date.now(),o._modality.next("touch"),o._mostRecentTarget=(0,T.sA)(e))},this._options=Object.assign(Object.assign({},V),r),this.modalityDetected=this._modality.pipe((0,S.T)(1)),this.modalityChanged=this.modalityDetected.pipe((0,x.x)()),t.isBrowser&&n.runOutsideAngular(function(){i.addEventListener("keydown",o._onKeydown,Q),i.addEventListener("mousedown",o._onMousedown,Q),i.addEventListener("touchstart",o._onTouchstart,Q)})}return(0,c.Z)(e,[{key:"mostRecentModality",get:function(){return this._modality.value}},{key:"ngOnDestroy",value:function(){this._platform.isBrowser&&(document.removeEventListener("keydown",this._onKeydown,Q),document.removeEventListener("mousedown",this._onMousedown,Q),document.removeEventListener("touchstart",this._onTouchstart,Q))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(d.LFG(T.t4),d.LFG(d.R0b),d.LFG(u.K0),d.LFG(W,8))},e.\u0275prov=d.Yz7({factory:function(){return new e(d.LFG(T.t4),d.LFG(d.R0b),d.LFG(u.K0),d.LFG(W,8))},token:e,providedIn:"root"}),e}(),K=new d.OlP("liveAnnouncerElement",{providedIn:"root",factory:function(){return null}}),$=new d.OlP("LIVE_ANNOUNCER_DEFAULT_OPTIONS"),ee=function(){var e=function(){function e(t,n,i,r){(0,l.Z)(this,e),this._ngZone=n,this._defaultOptions=r,this._document=i,this._liveElement=t||this._createLiveElement()}return(0,c.Z)(e,[{key:"announce",value:function(e){for(var t,n,i=this,r=this._defaultOptions,o=arguments.length,a=new Array(o>1?o-1:0),s=1;s1&&void 0!==arguments[1]&&arguments[1],n=(0,k.fI)(e);if(!this._platform.isBrowser||1!==n.nodeType)return(0,m.of)(null);var i=(0,T.kV)(n)||this._getDocument(),r=this._elementInfo.get(n);if(r)return t&&(r.checkChildren=!0),r.subject;var o={checkChildren:t,subject:new h.xQ,rootNode:i};return this._elementInfo.set(n,o),this._registerGlobalListeners(o),o.subject}},{key:"stopMonitoring",value:function(e){var t=(0,k.fI)(e),n=this._elementInfo.get(t);n&&(n.subject.complete(),this._setClasses(t),this._elementInfo.delete(t),this._removeGlobalListeners(n))}},{key:"focusVia",value:function(e,t,n){var r=this,o=(0,k.fI)(e);o===this._getDocument().activeElement?this._getClosestElementsInfo(o).forEach(function(e){var n=(0,i.Z)(e,2);return r._originChanged(n[0],t,n[1])}):(this._setOrigin(t),"function"==typeof o.focus&&o.focus(n))}},{key:"ngOnDestroy",value:function(){var e=this;this._elementInfo.forEach(function(t,n){return e.stopMonitoring(n)})}},{key:"_getDocument",value:function(){return this._document||document}},{key:"_getWindow",value:function(){return this._getDocument().defaultView||window}},{key:"_toggleClass",value:function(e,t,n){n?e.classList.add(t):e.classList.remove(t)}},{key:"_getFocusOrigin",value:function(e){return this._origin?this._originFromTouchInteraction?this._shouldBeAttributedToTouch(e)?"touch":"program":this._origin:this._windowFocused&&this._lastFocusOrigin?this._lastFocusOrigin:"program"}},{key:"_shouldBeAttributedToTouch",value:function(e){return 1===this._detectionMode||!!(null==e?void 0:e.contains(this._inputModalityDetector._mostRecentTarget))}},{key:"_setClasses",value:function(e,t){this._toggleClass(e,"cdk-focused",!!t),this._toggleClass(e,"cdk-touch-focused","touch"===t),this._toggleClass(e,"cdk-keyboard-focused","keyboard"===t),this._toggleClass(e,"cdk-mouse-focused","mouse"===t),this._toggleClass(e,"cdk-program-focused","program"===t)}},{key:"_setOrigin",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this._ngZone.runOutsideAngular(function(){t._origin=e,t._originFromTouchInteraction="touch"===e&&n,0===t._detectionMode&&(clearTimeout(t._originTimeoutId),t._originTimeoutId=setTimeout(function(){return t._origin=null},t._originFromTouchInteraction?650:1))})}},{key:"_onFocus",value:function(e,t){var n=this._elementInfo.get(t),i=(0,T.sA)(e);n&&(n.checkChildren||t===i)&&this._originChanged(t,this._getFocusOrigin(i),n)}},{key:"_onBlur",value:function(e,t){var n=this._elementInfo.get(t);!n||n.checkChildren&&e.relatedTarget instanceof Node&&t.contains(e.relatedTarget)||(this._setClasses(t),this._emitOrigin(n.subject,null))}},{key:"_emitOrigin",value:function(e,t){this._ngZone.run(function(){return e.next(t)})}},{key:"_registerGlobalListeners",value:function(e){var t=this;if(this._platform.isBrowser){var n=e.rootNode,i=this._rootNodeFocusListenerCount.get(n)||0;i||this._ngZone.runOutsideAngular(function(){n.addEventListener("focus",t._rootNodeFocusAndBlurListener,ne),n.addEventListener("blur",t._rootNodeFocusAndBlurListener,ne)}),this._rootNodeFocusListenerCount.set(n,i+1),1==++this._monitoredElementCount&&(this._ngZone.runOutsideAngular(function(){t._getWindow().addEventListener("focus",t._windowFocusListener)}),this._inputModalityDetector.modalityDetected.pipe((0,C.R)(this._stopInputModalityDetector)).subscribe(function(e){t._setOrigin(e,!0)}))}}},{key:"_removeGlobalListeners",value:function(e){var t=e.rootNode;if(this._rootNodeFocusListenerCount.has(t)){var n=this._rootNodeFocusListenerCount.get(t);n>1?this._rootNodeFocusListenerCount.set(t,n-1):(t.removeEventListener("focus",this._rootNodeFocusAndBlurListener,ne),t.removeEventListener("blur",this._rootNodeFocusAndBlurListener,ne),this._rootNodeFocusListenerCount.delete(t))}--this._monitoredElementCount||(this._getWindow().removeEventListener("focus",this._windowFocusListener),this._stopInputModalityDetector.next(),clearTimeout(this._windowFocusTimeoutId),clearTimeout(this._originTimeoutId))}},{key:"_originChanged",value:function(e,t,n){this._setClasses(e,t),this._emitOrigin(n.subject,t),this._lastFocusOrigin=t}},{key:"_getClosestElementsInfo",value:function(e){var t=[];return this._elementInfo.forEach(function(n,i){(i===e||n.checkChildren&&i.contains(e))&&t.push([i,n])}),t}}]),e}();return e.\u0275fac=function(t){return new(t||e)(d.LFG(d.R0b),d.LFG(T.t4),d.LFG(X),d.LFG(u.K0,8),d.LFG(te,8))},e.\u0275prov=d.Yz7({factory:function(){return new e(d.LFG(d.R0b),d.LFG(T.t4),d.LFG(X),d.LFG(u.K0,8),d.LFG(te,8))},token:e,providedIn:"root"}),e}(),re=function(){var e=function(){function e(t,n){(0,l.Z)(this,e),this._elementRef=t,this._focusMonitor=n,this.cdkFocusChange=new d.vpe}return(0,c.Z)(e,[{key:"ngAfterViewInit",value:function(){var e=this,t=this._elementRef.nativeElement;this._monitorSubscription=this._focusMonitor.monitor(t,1===t.nodeType&&t.hasAttribute("cdkMonitorSubtreeFocus")).subscribe(function(t){return e.cdkFocusChange.emit(t)})}},{key:"ngOnDestroy",value:function(){this._focusMonitor.stopMonitoring(this._elementRef),this._monitorSubscription&&this._monitorSubscription.unsubscribe()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(d.Y36(d.SBq),d.Y36(ie))},e.\u0275dir=d.lG2({type:e,selectors:[["","cdkMonitorElementFocus",""],["","cdkMonitorSubtreeFocus",""]],outputs:{cdkFocusChange:"cdkFocusChange"}}),e}(),oe="cdk-high-contrast-black-on-white",ae="cdk-high-contrast-white-on-black",se="cdk-high-contrast-active",le=function(){var e=function(){function e(t,n){(0,l.Z)(this,e),this._platform=t,this._document=n}return(0,c.Z)(e,[{key:"getHighContrastMode",value:function(){if(!this._platform.isBrowser)return 0;var e=this._document.createElement("div");e.style.backgroundColor="rgb(1,2,3)",e.style.position="absolute",this._document.body.appendChild(e);var t=this._document.defaultView||window,n=t&&t.getComputedStyle?t.getComputedStyle(e):null,i=(n&&n.backgroundColor||"").replace(/ /g,"");switch(this._document.body.removeChild(e),i){case"rgb(0,0,0)":return 2;case"rgb(255,255,255)":return 1}return 0}},{key:"_applyBodyHighContrastModeCssClasses",value:function(){if(!this._hasCheckedHighContrastMode&&this._platform.isBrowser&&this._document.body){var e=this._document.body.classList;e.remove(se),e.remove(oe),e.remove(ae),this._hasCheckedHighContrastMode=!0;var t=this.getHighContrastMode();1===t?(e.add(se),e.add(oe)):2===t&&(e.add(se),e.add(ae))}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(d.LFG(T.t4),d.LFG(u.K0))},e.\u0275prov=d.Yz7({factory:function(){return new e(d.LFG(T.t4),d.LFG(u.K0))},token:e,providedIn:"root"}),e}(),ce=function(){var e=function e(t){(0,l.Z)(this,e),t._applyBodyHighContrastModeCssClasses()};return e.\u0275fac=function(t){return new(t||e)(d.LFG(le))},e.\u0275mod=d.oAB({type:e}),e.\u0275inj=d.cJS({imports:[[T.ud,A.Q8]]}),e}()},8392:function(e,t,n){"use strict";n.d(t,{vT:function(){return c},Is:function(){return l}});var i=n(61680),r=n(11254),o=n(37602),a=n(40098),s=new o.OlP("cdk-dir-doc",{providedIn:"root",factory:function(){return(0,o.f3M)(a.K0)}}),l=function(){var e=function(){function e(t){if((0,i.Z)(this,e),this.value="ltr",this.change=new o.vpe,t){var n=(t.body?t.body.dir:null)||(t.documentElement?t.documentElement.dir:null);this.value="ltr"===n||"rtl"===n?n:"ltr"}}return(0,r.Z)(e,[{key:"ngOnDestroy",value:function(){this.change.complete()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(o.LFG(s,8))},e.\u0275prov=o.Yz7({factory:function(){return new e(o.LFG(s,8))},token:e,providedIn:"root"}),e}(),c=function(){var e=function e(){(0,i.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=o.oAB({type:e}),e.\u0275inj=o.cJS({}),e}()},37429:function(e,t,n){"use strict";n.d(t,{P3:function(){return f},o2:function(){return h},Ov:function(){return v},A8:function(){return y},yy:function(){return m},eX:function(){return g},k:function(){return _},Z9:function(){return p}});var i=n(20454),r=n(11254),o=n(49843),a=n(37859),s=n(61680),l=n(17504),c=n(43161),u=n(68707),d=n(37602),h=function e(){(0,s.Z)(this,e)};function p(e){return e&&"function"==typeof e.connect}var f=function(e){(0,o.Z)(n,e);var t=(0,a.Z)(n);function n(e){var i;return(0,s.Z)(this,n),(i=t.call(this))._data=e,i}return(0,r.Z)(n,[{key:"connect",value:function(){return(0,l.b)(this._data)?this._data:(0,c.of)(this._data)}},{key:"disconnect",value:function(){}}]),n}(h),m=function(){function e(){(0,s.Z)(this,e)}return(0,r.Z)(e,[{key:"applyChanges",value:function(e,t,n,i,r){e.forEachOperation(function(e,i,o){var a,s;if(null==e.previousIndex){var l=n(e,i,o);a=t.createEmbeddedView(l.templateRef,l.context,l.index),s=1}else null==o?(t.remove(i),s=3):(a=t.get(i),t.move(a,o),s=2);r&&r({context:null==a?void 0:a.context,operation:s,record:e})})}},{key:"detach",value:function(){}}]),e}(),g=function(){function e(){(0,s.Z)(this,e),this.viewCacheSize=20,this._viewCache=[]}return(0,r.Z)(e,[{key:"applyChanges",value:function(e,t,n,i,r){var o=this;e.forEachOperation(function(e,a,s){var l,c;null==e.previousIndex?c=(l=o._insertView(function(){return n(e,a,s)},s,t,i(e)))?1:0:null==s?(o._detachAndCacheView(a,t),c=3):(l=o._moveView(a,s,t,i(e)),c=2),r&&r({context:null==l?void 0:l.context,operation:c,record:e})})}},{key:"detach",value:function(){var e,t=(0,i.Z)(this._viewCache);try{for(t.s();!(e=t.n()).done;)e.value.destroy()}catch(n){t.e(n)}finally{t.f()}this._viewCache=[]}},{key:"_insertView",value:function(e,t,n,i){var r=this._insertViewFromCache(t,n);if(!r){var o=e();return n.createEmbeddedView(o.templateRef,o.context,o.index)}r.context.$implicit=i}},{key:"_detachAndCacheView",value:function(e,t){var n=t.detach(e);this._maybeCacheView(n,t)}},{key:"_moveView",value:function(e,t,n,i){var r=n.get(e);return n.move(r,t),r.context.$implicit=i,r}},{key:"_maybeCacheView",value:function(e,t){if(this._viewCache.length0&&void 0!==arguments[0]&&arguments[0],i=arguments.length>1?arguments[1]:void 0,r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];(0,s.Z)(this,e),this._multiple=n,this._emitChanges=r,this._selection=new Set,this._deselectedToEmit=[],this._selectedToEmit=[],this.changed=new u.xQ,i&&i.length&&(n?i.forEach(function(e){return t._markSelected(e)}):this._markSelected(i[0]),this._selectedToEmit.length=0)}return(0,r.Z)(e,[{key:"selected",get:function(){return this._selected||(this._selected=Array.from(this._selection.values())),this._selected}},{key:"select",value:function(){for(var e=this,t=arguments.length,n=new Array(t),i=0;i1?t-1:0),i=1;it.height||e.scrollWidth>t.width}}]),e}(),A=function(){function e(t,n,i,r){var o=this;(0,c.Z)(this,e),this._scrollDispatcher=t,this._ngZone=n,this._viewportRuler=i,this._config=r,this._scrollSubscription=null,this._detach=function(){o.disable(),o._overlayRef.hasAttached()&&o._ngZone.run(function(){return o._overlayRef.detach()})}}return(0,u.Z)(e,[{key:"attach",value:function(e){this._overlayRef=e}},{key:"enable",value:function(){var e=this;if(!this._scrollSubscription){var t=this._scrollDispatcher.scrolled(0);this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=t.subscribe(function(){var t=e._viewportRuler.getViewportScrollPosition().top;Math.abs(t-e._initialScrollPosition)>e._config.threshold?e._detach():e._overlayRef.updatePosition()})):this._scrollSubscription=t.subscribe(this._detach)}}},{key:"disable",value:function(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}},{key:"detach",value:function(){this.disable(),this._overlayRef=null}}]),e}(),Z=function(){function e(){(0,c.Z)(this,e)}return(0,u.Z)(e,[{key:"enable",value:function(){}},{key:"disable",value:function(){}},{key:"attach",value:function(){}}]),e}();function M(e,t){return t.some(function(t){return e.bottomt.bottom||e.rightt.right})}function O(e,t){return t.some(function(t){return e.topt.bottom||e.leftt.right})}var E=function(){function e(t,n,i,r){(0,c.Z)(this,e),this._scrollDispatcher=t,this._viewportRuler=n,this._ngZone=i,this._config=r,this._scrollSubscription=null}return(0,u.Z)(e,[{key:"attach",value:function(e){this._overlayRef=e}},{key:"enable",value:function(){var e=this;this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(function(){if(e._overlayRef.updatePosition(),e._config&&e._config.autoClose){var t=e._overlayRef.overlayElement.getBoundingClientRect(),n=e._viewportRuler.getViewportSize(),i=n.width,r=n.height;M(t,[{width:i,height:r,bottom:r,right:i,top:0,left:0}])&&(e.disable(),e._ngZone.run(function(){return e._overlayRef.detach()}))}}))}},{key:"disable",value:function(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}},{key:"detach",value:function(){this.disable(),this._overlayRef=null}}]),e}(),P=function(){var e=function e(t,n,i,r){var o=this;(0,c.Z)(this,e),this._scrollDispatcher=t,this._viewportRuler=n,this._ngZone=i,this.noop=function(){return new Z},this.close=function(e){return new A(o._scrollDispatcher,o._ngZone,o._viewportRuler,e)},this.block=function(){return new T(o._viewportRuler,o._document)},this.reposition=function(e){return new E(o._scrollDispatcher,o._viewportRuler,o._ngZone,e)},this._document=r};return e.\u0275fac=function(t){return new(t||e)(h.LFG(d.mF),h.LFG(d.rL),h.LFG(h.R0b),h.LFG(m.K0))},e.\u0275prov=h.Yz7({factory:function(){return new e(h.LFG(d.mF),h.LFG(d.rL),h.LFG(h.R0b),h.LFG(m.K0))},token:e,providedIn:"root"}),e}(),I=function e(t){if((0,c.Z)(this,e),this.scrollStrategy=new Z,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t)for(var n=0,i=Object.keys(t);n-1&&this._attachedOverlays.splice(t,1),0===this._attachedOverlays.length&&this.detach()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(h.LFG(m.K0))},e.\u0275prov=h.Yz7({factory:function(){return new e(h.LFG(m.K0))},token:e,providedIn:"root"}),e}(),R=function(){var e=function(e){(0,s.Z)(n,e);var t=(0,l.Z)(n);function n(e){var i;return(0,c.Z)(this,n),(i=t.call(this,e))._keydownListener=function(e){for(var t=i._attachedOverlays,n=t.length-1;n>-1;n--)if(t[n]._keydownEvents.observers.length>0){t[n]._keydownEvents.next(e);break}},i}return(0,u.Z)(n,[{key:"add",value:function(e){(0,o.Z)((0,a.Z)(n.prototype),"add",this).call(this,e),this._isAttached||(this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0)}},{key:"detach",value:function(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}}]),n}(D);return e.\u0275fac=function(t){return new(t||e)(h.LFG(m.K0))},e.\u0275prov=h.Yz7({factory:function(){return new e(h.LFG(m.K0))},token:e,providedIn:"root"}),e}(),L=function(){var e=function(e){(0,s.Z)(n,e);var t=(0,l.Z)(n);function n(e,i){var r;return(0,c.Z)(this,n),(r=t.call(this,e))._platform=i,r._cursorStyleIsSet=!1,r._clickListener=function(e){for(var t=(0,p.sA)(e),n=r._attachedOverlays.slice(),i=n.length-1;i>-1;i--){var o=n[i];if(!(o._outsidePointerEvents.observers.length<1)&&o.hasAttached()){if(o.overlayElement.contains(t))break;o._outsidePointerEvents.next(e)}}},r}return(0,u.Z)(n,[{key:"add",value:function(e){if((0,o.Z)((0,a.Z)(n.prototype),"add",this).call(this,e),!this._isAttached){var t=this._document.body;t.addEventListener("click",this._clickListener,!0),t.addEventListener("auxclick",this._clickListener,!0),t.addEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&!this._cursorStyleIsSet&&(this._cursorOriginalValue=t.style.cursor,t.style.cursor="pointer",this._cursorStyleIsSet=!0),this._isAttached=!0}}},{key:"detach",value:function(){if(this._isAttached){var e=this._document.body;e.removeEventListener("click",this._clickListener,!0),e.removeEventListener("auxclick",this._clickListener,!0),e.removeEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&this._cursorStyleIsSet&&(e.style.cursor=this._cursorOriginalValue,this._cursorStyleIsSet=!1),this._isAttached=!1}}}]),n}(D);return e.\u0275fac=function(t){return new(t||e)(h.LFG(m.K0),h.LFG(p.t4))},e.\u0275prov=h.Yz7({factory:function(){return new e(h.LFG(m.K0),h.LFG(p.t4))},token:e,providedIn:"root"}),e}(),F="undefined"!=typeof window?window:{},B=void 0!==F.__karma__&&!!F.__karma__||void 0!==F.jasmine&&!!F.jasmine||void 0!==F.jest&&!!F.jest||void 0!==F.Mocha&&!!F.Mocha,j=function(){var e=function(){function e(t,n){(0,c.Z)(this,e),this._platform=n,this._document=t}return(0,u.Z)(e,[{key:"ngOnDestroy",value:function(){var e=this._containerElement;e&&e.parentNode&&e.parentNode.removeChild(e)}},{key:"getContainerElement",value:function(){return this._containerElement||this._createContainer(),this._containerElement}},{key:"_createContainer",value:function(){var e="cdk-overlay-container";if(this._platform.isBrowser||B)for(var t=this._document.querySelectorAll(".".concat(e,'[platform="server"], ')+".".concat(e,'[platform="test"]')),n=0;nf&&(f=v,p=g)}}catch(y){m.e(y)}finally{m.f()}return this._isPushed=!1,void this._applyPosition(p.position,p.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(e.position,e.originPoint);this._applyPosition(e.position,e.originPoint)}}},{key:"detach",value:function(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}},{key:"dispose",value:function(){this._isDisposed||(this._boundingBox&&J(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(U),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}},{key:"reapplyLastPosition",value:function(){if(!this._isDisposed&&(!this._platform||this._platform.isBrowser)){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect();var e=this._lastPosition||this._preferredPositions[0],t=this._getOriginPoint(this._originRect,e);this._applyPosition(e,t)}}},{key:"withScrollableContainers",value:function(e){return this._scrollables=e,this}},{key:"withPositions",value:function(e){return this._preferredPositions=e,-1===e.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}},{key:"withViewportMargin",value:function(e){return this._viewportMargin=e,this}},{key:"withFlexibleDimensions",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._hasFlexibleDimensions=e,this}},{key:"withGrowAfterOpen",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._growAfterOpen=e,this}},{key:"withPush",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._canPush=e,this}},{key:"withLockedPosition",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._positionLocked=e,this}},{key:"setOrigin",value:function(e){return this._origin=e,this}},{key:"withDefaultOffsetX",value:function(e){return this._offsetX=e,this}},{key:"withDefaultOffsetY",value:function(e){return this._offsetY=e,this}},{key:"withTransformOriginOn",value:function(e){return this._transformOriginSelector=e,this}},{key:"_getOriginPoint",value:function(e,t){var n;if("center"==t.originX)n=e.left+e.width/2;else{var i=this._isRtl()?e.right:e.left,r=this._isRtl()?e.left:e.right;n="start"==t.originX?i:r}return{x:n,y:"center"==t.originY?e.top+e.height/2:"top"==t.originY?e.top:e.bottom}}},{key:"_getOverlayPoint",value:function(e,t,n){var i;return i="center"==n.overlayX?-t.width/2:"start"===n.overlayX?this._isRtl()?-t.width:0:this._isRtl()?0:-t.width,{x:e.x+i,y:e.y+("center"==n.overlayY?-t.height/2:"top"==n.overlayY?0:-t.height)}}},{key:"_getOverlayFit",value:function(e,t,n,i){var r=W(t),o=e.x,a=e.y,s=this._getOffset(i,"x"),l=this._getOffset(i,"y");s&&(o+=s),l&&(a+=l);var c=0-a,u=a+r.height-n.height,d=this._subtractOverflows(r.width,0-o,o+r.width-n.width),h=this._subtractOverflows(r.height,c,u),p=d*h;return{visibleArea:p,isCompletelyWithinViewport:r.width*r.height===p,fitsInViewportVertically:h===r.height,fitsInViewportHorizontally:d==r.width}}},{key:"_canFitWithFlexibleDimensions",value:function(e,t,n){if(this._hasFlexibleDimensions){var i=n.bottom-t.y,r=n.right-t.x,o=G(this._overlayRef.getConfig().minHeight),a=G(this._overlayRef.getConfig().minWidth);return(e.fitsInViewportVertically||null!=o&&o<=i)&&(e.fitsInViewportHorizontally||null!=a&&a<=r)}return!1}},{key:"_pushOverlayOnScreen",value:function(e,t,n){if(this._previousPushAmount&&this._positionLocked)return{x:e.x+this._previousPushAmount.x,y:e.y+this._previousPushAmount.y};var i,r,o=W(t),a=this._viewportRect,s=Math.max(e.x+o.width-a.width,0),l=Math.max(e.y+o.height-a.height,0),c=Math.max(a.top-n.top-e.y,0),u=Math.max(a.left-n.left-e.x,0);return this._previousPushAmount={x:i=o.width<=a.width?u||-s:e.xd&&!this._isInitialRender&&!this._growAfterOpen&&(i=e.y-d/2)}if("end"===t.overlayX&&!c||"start"===t.overlayX&&c)s=l.width-e.x+this._viewportMargin,o=e.x-this._viewportMargin;else if("start"===t.overlayX&&!c||"end"===t.overlayX&&c)a=e.x,o=l.right-e.x;else{var h=Math.min(l.right-e.x+l.left,e.x),p=this._lastBoundingBoxSize.width;a=e.x-h,(o=2*h)>p&&!this._isInitialRender&&!this._growAfterOpen&&(a=e.x-p/2)}return{top:i,left:a,bottom:r,right:s,width:o,height:n}}},{key:"_setBoundingBoxStyles",value:function(e,t){var n=this._calculateBoundingBoxRect(e,t);this._isInitialRender||this._growAfterOpen||(n.height=Math.min(n.height,this._lastBoundingBoxSize.height),n.width=Math.min(n.width,this._lastBoundingBoxSize.width));var i={};if(this._hasExactPosition())i.top=i.left="0",i.bottom=i.right=i.maxHeight=i.maxWidth="",i.width=i.height="100%";else{var r=this._overlayRef.getConfig().maxHeight,o=this._overlayRef.getConfig().maxWidth;i.height=(0,g.HM)(n.height),i.top=(0,g.HM)(n.top),i.bottom=(0,g.HM)(n.bottom),i.width=(0,g.HM)(n.width),i.left=(0,g.HM)(n.left),i.right=(0,g.HM)(n.right),i.alignItems="center"===t.overlayX?"center":"end"===t.overlayX?"flex-end":"flex-start",i.justifyContent="center"===t.overlayY?"center":"bottom"===t.overlayY?"flex-end":"flex-start",r&&(i.maxHeight=(0,g.HM)(r)),o&&(i.maxWidth=(0,g.HM)(o))}this._lastBoundingBoxSize=n,J(this._boundingBox.style,i)}},{key:"_resetBoundingBoxStyles",value:function(){J(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}},{key:"_resetOverlayElementStyles",value:function(){J(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}},{key:"_setOverlayElementStyles",value:function(e,t){var n={},i=this._hasExactPosition(),r=this._hasFlexibleDimensions,o=this._overlayRef.getConfig();if(i){var a=this._viewportRuler.getViewportScrollPosition();J(n,this._getExactOverlayY(t,e,a)),J(n,this._getExactOverlayX(t,e,a))}else n.position="static";var s="",l=this._getOffset(t,"x"),c=this._getOffset(t,"y");l&&(s+="translateX(".concat(l,"px) ")),c&&(s+="translateY(".concat(c,"px)")),n.transform=s.trim(),o.maxHeight&&(i?n.maxHeight=(0,g.HM)(o.maxHeight):r&&(n.maxHeight="")),o.maxWidth&&(i?n.maxWidth=(0,g.HM)(o.maxWidth):r&&(n.maxWidth="")),J(this._pane.style,n)}},{key:"_getExactOverlayY",value:function(e,t,n){var i={top:"",bottom:""},r=this._getOverlayPoint(t,this._overlayRect,e);this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,n));var o=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return r.y-=o,"bottom"===e.overlayY?i.bottom="".concat(this._document.documentElement.clientHeight-(r.y+this._overlayRect.height),"px"):i.top=(0,g.HM)(r.y),i}},{key:"_getExactOverlayX",value:function(e,t,n){var i={left:"",right:""},r=this._getOverlayPoint(t,this._overlayRect,e);return this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,n)),"right"==(this._isRtl()?"end"===e.overlayX?"left":"right":"end"===e.overlayX?"right":"left")?i.right="".concat(this._document.documentElement.clientWidth-(r.x+this._overlayRect.width),"px"):i.left=(0,g.HM)(r.x),i}},{key:"_getScrollVisibility",value:function(){var e=this._getOriginRect(),t=this._pane.getBoundingClientRect(),n=this._scrollables.map(function(e){return e.getElementRef().nativeElement.getBoundingClientRect()});return{isOriginClipped:O(e,n),isOriginOutsideView:M(e,n),isOverlayClipped:O(t,n),isOverlayOutsideView:M(t,n)}}},{key:"_subtractOverflows",value:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i0&&void 0!==arguments[0]?arguments[0]:"";return this._bottomOffset="",this._topOffset=e,this._alignItems="flex-start",this}},{key:"left",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._rightOffset="",this._leftOffset=e,this._justifyContent="flex-start",this}},{key:"bottom",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._topOffset="",this._bottomOffset=e,this._alignItems="flex-end",this}},{key:"right",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._leftOffset="",this._rightOffset=e,this._justifyContent="flex-end",this}},{key:"width",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._overlayRef?this._overlayRef.updateSize({width:e}):this._width=e,this}},{key:"height",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._overlayRef?this._overlayRef.updateSize({height:e}):this._height=e,this}},{key:"centerHorizontally",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this.left(e),this._justifyContent="center",this}},{key:"centerVertically",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this.top(e),this._alignItems="center",this}},{key:"apply",value:function(){if(this._overlayRef&&this._overlayRef.hasAttached()){var e=this._overlayRef.overlayElement.style,t=this._overlayRef.hostElement.style,n=this._overlayRef.getConfig(),i=n.width,r=n.height,o=n.maxWidth,a=n.maxHeight,s=!("100%"!==i&&"100vw"!==i||o&&"100%"!==o&&"100vw"!==o),l=!("100%"!==r&&"100vh"!==r||a&&"100%"!==a&&"100vh"!==a);e.position=this._cssPosition,e.marginLeft=s?"0":this._leftOffset,e.marginTop=l?"0":this._topOffset,e.marginBottom=this._bottomOffset,e.marginRight=this._rightOffset,s?t.justifyContent="flex-start":"center"===this._justifyContent?t.justifyContent="center":"rtl"===this._overlayRef.getConfig().direction?"flex-start"===this._justifyContent?t.justifyContent="flex-end":"flex-end"===this._justifyContent&&(t.justifyContent="flex-start"):t.justifyContent=this._justifyContent,t.alignItems=l?"flex-start":this._alignItems}}},{key:"dispose",value:function(){if(!this._isDisposed&&this._overlayRef){var e=this._overlayRef.overlayElement.style,t=this._overlayRef.hostElement,n=t.style;t.classList.remove(Q),n.justifyContent=n.alignItems=e.marginTop=e.marginBottom=e.marginLeft=e.marginRight=e.position="",this._overlayRef=null,this._isDisposed=!0}}}]),e}(),K=function(){var e=function(){function e(t,n,i,r){(0,c.Z)(this,e),this._viewportRuler=t,this._document=n,this._platform=i,this._overlayContainer=r}return(0,u.Z)(e,[{key:"global",value:function(){return new X}},{key:"connectedTo",value:function(e,t,n){return new V(t,n,e,this._viewportRuler,this._document,this._platform,this._overlayContainer)}},{key:"flexibleConnectedTo",value:function(e){return new Y(e,this._viewportRuler,this._document,this._platform,this._overlayContainer)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(h.LFG(d.rL),h.LFG(m.K0),h.LFG(p.t4),h.LFG(j))},e.\u0275prov=h.Yz7({factory:function(){return new e(h.LFG(d.rL),h.LFG(m.K0),h.LFG(p.t4),h.LFG(j))},token:e,providedIn:"root"}),e}(),$=0,ee=function(){var e=function(){function e(t,n,i,r,o,a,s,l,u,d,h){(0,c.Z)(this,e),this.scrollStrategies=t,this._overlayContainer=n,this._componentFactoryResolver=i,this._positionBuilder=r,this._keyboardDispatcher=o,this._injector=a,this._ngZone=s,this._document=l,this._directionality=u,this._location=d,this._outsideClickDispatcher=h}return(0,u.Z)(e,[{key:"create",value:function(e){var t=this._createHostElement(),n=this._createPaneElement(t),i=this._createPortalOutlet(n),r=new I(e);return r.direction=r.direction||this._directionality.value,new z(i,t,n,r,this._ngZone,this._keyboardDispatcher,this._document,this._location,this._outsideClickDispatcher)}},{key:"position",value:function(){return this._positionBuilder}},{key:"_createPaneElement",value:function(e){var t=this._document.createElement("div");return t.id="cdk-overlay-".concat($++),t.classList.add("cdk-overlay-pane"),e.appendChild(t),t}},{key:"_createHostElement",value:function(){var e=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(e),e}},{key:"_createPortalOutlet",value:function(e){return this._appRef||(this._appRef=this._injector.get(h.z2F)),new v.u0(e,this._componentFactoryResolver,this._appRef,this._injector,this._document)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(h.LFG(P),h.LFG(j),h.LFG(h._Vd),h.LFG(K),h.LFG(R),h.LFG(h.zs3),h.LFG(h.R0b),h.LFG(m.K0),h.LFG(f.Is),h.LFG(m.Ye),h.LFG(L))},e.\u0275prov=h.Yz7({token:e,factory:e.\u0275fac}),e}(),te=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],ne=new h.OlP("cdk-connected-overlay-scroll-strategy"),ie=function(){var e=function e(t){(0,c.Z)(this,e),this.elementRef=t};return e.\u0275fac=function(t){return new(t||e)(h.Y36(h.SBq))},e.\u0275dir=h.lG2({type:e,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"]}),e}(),re=function(){var e=function(){function e(t,n,i,r,o){(0,c.Z)(this,e),this._overlay=t,this._dir=o,this._hasBackdrop=!1,this._lockPosition=!1,this._growAfterOpen=!1,this._flexibleDimensions=!1,this._push=!1,this._backdropSubscription=_.w.EMPTY,this._attachSubscription=_.w.EMPTY,this._detachSubscription=_.w.EMPTY,this._positionSubscription=_.w.EMPTY,this.viewportMargin=0,this.open=!1,this.disableClose=!1,this.backdropClick=new h.vpe,this.positionChange=new h.vpe,this.attach=new h.vpe,this.detach=new h.vpe,this.overlayKeydown=new h.vpe,this.overlayOutsideClick=new h.vpe,this._templatePortal=new v.UE(n,i),this._scrollStrategyFactory=r,this.scrollStrategy=this._scrollStrategyFactory()}return(0,u.Z)(e,[{key:"offsetX",get:function(){return this._offsetX},set:function(e){this._offsetX=e,this._position&&this._updatePositionStrategy(this._position)}},{key:"offsetY",get:function(){return this._offsetY},set:function(e){this._offsetY=e,this._position&&this._updatePositionStrategy(this._position)}},{key:"hasBackdrop",get:function(){return this._hasBackdrop},set:function(e){this._hasBackdrop=(0,g.Ig)(e)}},{key:"lockPosition",get:function(){return this._lockPosition},set:function(e){this._lockPosition=(0,g.Ig)(e)}},{key:"flexibleDimensions",get:function(){return this._flexibleDimensions},set:function(e){this._flexibleDimensions=(0,g.Ig)(e)}},{key:"growAfterOpen",get:function(){return this._growAfterOpen},set:function(e){this._growAfterOpen=(0,g.Ig)(e)}},{key:"push",get:function(){return this._push},set:function(e){this._push=(0,g.Ig)(e)}},{key:"overlayRef",get:function(){return this._overlayRef}},{key:"dir",get:function(){return this._dir?this._dir.value:"ltr"}},{key:"ngOnDestroy",value:function(){this._attachSubscription.unsubscribe(),this._detachSubscription.unsubscribe(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this._overlayRef&&this._overlayRef.dispose()}},{key:"ngOnChanges",value:function(e){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef.updateSize({width:this.width,minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),e.origin&&this.open&&this._position.apply()),e.open&&(this.open?this._attachOverlay():this._detachOverlay())}},{key:"_createOverlay",value:function(){var e=this;this.positions&&this.positions.length||(this.positions=te);var t=this._overlayRef=this._overlay.create(this._buildConfig());this._attachSubscription=t.attachments().subscribe(function(){return e.attach.emit()}),this._detachSubscription=t.detachments().subscribe(function(){return e.detach.emit()}),t.keydownEvents().subscribe(function(t){e.overlayKeydown.next(t),t.keyCode!==C.hY||e.disableClose||(0,C.Vb)(t)||(t.preventDefault(),e._detachOverlay())}),this._overlayRef.outsidePointerEvents().subscribe(function(t){e.overlayOutsideClick.next(t)})}},{key:"_buildConfig",value:function(){var e=this._position=this.positionStrategy||this._createPositionStrategy(),t=new I({direction:this._dir,positionStrategy:e,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop});return(this.width||0===this.width)&&(t.width=this.width),(this.height||0===this.height)&&(t.height=this.height),(this.minWidth||0===this.minWidth)&&(t.minWidth=this.minWidth),(this.minHeight||0===this.minHeight)&&(t.minHeight=this.minHeight),this.backdropClass&&(t.backdropClass=this.backdropClass),this.panelClass&&(t.panelClass=this.panelClass),t}},{key:"_updatePositionStrategy",value:function(e){var t=this,n=this.positions.map(function(e){return{originX:e.originX,originY:e.originY,overlayX:e.overlayX,overlayY:e.overlayY,offsetX:e.offsetX||t.offsetX,offsetY:e.offsetY||t.offsetY,panelClass:e.panelClass||void 0}});return e.setOrigin(this.origin.elementRef).withPositions(n).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector)}},{key:"_createPositionStrategy",value:function(){var e=this._overlay.position().flexibleConnectedTo(this.origin.elementRef);return this._updatePositionStrategy(e),e}},{key:"_attachOverlay",value:function(){var e=this;this._overlayRef?this._overlayRef.getConfig().hasBackdrop=this.hasBackdrop:this._createOverlay(),this._overlayRef.hasAttached()||this._overlayRef.attach(this._templatePortal),this.hasBackdrop?this._backdropSubscription=this._overlayRef.backdropClick().subscribe(function(t){e.backdropClick.emit(t)}):this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.positionChange.observers.length>0&&(this._positionSubscription=this._position.positionChanges.pipe((0,x.o)(function(){return e.positionChange.observers.length>0})).subscribe(function(t){e.positionChange.emit(t),0===e.positionChange.observers.length&&e._positionSubscription.unsubscribe()}))}},{key:"_detachOverlay",value:function(){this._overlayRef&&this._overlayRef.detach(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(h.Y36(ee),h.Y36(h.Rgc),h.Y36(h.s_b),h.Y36(ne),h.Y36(f.Is,8))},e.\u0275dir=h.lG2({type:e,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{viewportMargin:["cdkConnectedOverlayViewportMargin","viewportMargin"],open:["cdkConnectedOverlayOpen","open"],disableClose:["cdkConnectedOverlayDisableClose","disableClose"],scrollStrategy:["cdkConnectedOverlayScrollStrategy","scrollStrategy"],offsetX:["cdkConnectedOverlayOffsetX","offsetX"],offsetY:["cdkConnectedOverlayOffsetY","offsetY"],hasBackdrop:["cdkConnectedOverlayHasBackdrop","hasBackdrop"],lockPosition:["cdkConnectedOverlayLockPosition","lockPosition"],flexibleDimensions:["cdkConnectedOverlayFlexibleDimensions","flexibleDimensions"],growAfterOpen:["cdkConnectedOverlayGrowAfterOpen","growAfterOpen"],push:["cdkConnectedOverlayPush","push"],positions:["cdkConnectedOverlayPositions","positions"],origin:["cdkConnectedOverlayOrigin","origin"],positionStrategy:["cdkConnectedOverlayPositionStrategy","positionStrategy"],width:["cdkConnectedOverlayWidth","width"],height:["cdkConnectedOverlayHeight","height"],minWidth:["cdkConnectedOverlayMinWidth","minWidth"],minHeight:["cdkConnectedOverlayMinHeight","minHeight"],backdropClass:["cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:["cdkConnectedOverlayPanelClass","panelClass"],transformOriginSelector:["cdkConnectedOverlayTransformOriginOn","transformOriginSelector"]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown",overlayOutsideClick:"overlayOutsideClick"},exportAs:["cdkConnectedOverlay"],features:[h.TTD]}),e}(),oe={provide:ne,deps:[ee],useFactory:function(e){return function(){return e.scrollStrategies.reposition()}}},ae=function(){var e=function e(){(0,c.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=h.oAB({type:e}),e.\u0275inj=h.cJS({providers:[ee,oe],imports:[[f.vT,v.eL,d.Cl],d.Cl]}),e}()},15427:function(e,t,n){"use strict";n.d(t,{t4:function(){return h},ud:function(){return p},sA:function(){return w},ht:function(){return b},kV:function(){return _},_i:function(){return y},qK:function(){return m},i$:function(){return g},Mq:function(){return v}});var i,r=n(61680),o=n(37602),a=n(40098);try{i="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(S){i=!1}var s,l,c,u,d,h=function(){var e=function e(t){(0,r.Z)(this,e),this._platformId=t,this.isBrowser=this._platformId?(0,a.NF)(this._platformId):"object"==typeof document&&!!document,this.EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent),this.TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent),this.BLINK=this.isBrowser&&!(!window.chrome&&!i)&&"undefined"!=typeof CSS&&!this.EDGE&&!this.TRIDENT,this.WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT,this.IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window),this.FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent),this.ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT,this.SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT};return e.\u0275fac=function(t){return new(t||e)(o.LFG(o.Lbi))},e.\u0275prov=o.Yz7({factory:function(){return new e(o.LFG(o.Lbi))},token:e,providedIn:"root"}),e}(),p=function(){var e=function e(){(0,r.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=o.oAB({type:e}),e.\u0275inj=o.cJS({}),e}(),f=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];function m(){if(s)return s;if("object"!=typeof document||!document)return s=new Set(f);var e=document.createElement("input");return s=new Set(f.filter(function(t){return e.setAttribute("type",t),e.type===t}))}function g(e){return function(){if(null==l&&"undefined"!=typeof window)try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:function(){return l=!0}}))}finally{l=l||!1}return l}()?e:!!e.capture}function v(){if(null==u){if("object"!=typeof document||!document||"function"!=typeof Element||!Element)return u=!1;if("scrollBehavior"in document.documentElement.style)u=!0;else{var e=Element.prototype.scrollTo;u=!!e&&!/\{\s*\[native code\]\s*\}/.test(e.toString())}}return u}function y(){if("object"!=typeof document||!document)return 0;if(null==c){var e=document.createElement("div"),t=e.style;e.dir="rtl",t.width="1px",t.overflow="auto",t.visibility="hidden",t.pointerEvents="none",t.position="absolute";var n=document.createElement("div"),i=n.style;i.width="2px",i.height="1px",e.appendChild(n),document.body.appendChild(e),c=0,0===e.scrollLeft&&(e.scrollLeft=1,c=0===e.scrollLeft?1:2),e.parentNode.removeChild(e)}return c}function _(e){if(function(){if(null==d){var e="undefined"!=typeof document?document.head:null;d=!(!e||!e.createShadowRoot&&!e.attachShadow)}return d}()){var t=e.getRootNode?e.getRootNode():null;if("undefined"!=typeof ShadowRoot&&ShadowRoot&&t instanceof ShadowRoot)return t}return null}function b(){for(var e="undefined"!=typeof document&&document?document.activeElement:null;e&&e.shadowRoot;){var t=e.shadowRoot.activeElement;if(t===e)break;e=t}return e}function w(e){return e.composedPath?e.composedPath()[0]:e.target}},80785:function(e,t,n){"use strict";n.d(t,{en:function(){return g},ig:function(){return y},Pl:function(){return _},C5:function(){return p},u0:function(){return v},eL:function(){return b},UE:function(){return f}});var i=n(3574),r=n(51751),o=n(12558),a=n(49843),s=n(37859),l=n(61680),c=n(11254),u=n(37602),d=n(40098),h=function(){function e(){(0,l.Z)(this,e)}return(0,c.Z)(e,[{key:"attach",value:function(e){return this._attachedHost=e,e.attach(this)}},{key:"detach",value:function(){var e=this._attachedHost;null!=e&&(this._attachedHost=null,e.detach())}},{key:"isAttached",get:function(){return null!=this._attachedHost}},{key:"setAttachedHost",value:function(e){this._attachedHost=e}}]),e}(),p=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r,o){var a;return(0,l.Z)(this,n),(a=t.call(this)).component=e,a.viewContainerRef=i,a.injector=r,a.componentFactoryResolver=o,a}return n}(h),f=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r){var o;return(0,l.Z)(this,n),(o=t.call(this)).templateRef=e,o.viewContainerRef=i,o.context=r,o}return(0,c.Z)(n,[{key:"origin",get:function(){return this.templateRef.elementRef}},{key:"attach",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.context;return this.context=t,(0,r.Z)((0,o.Z)(n.prototype),"attach",this).call(this,e)}},{key:"detach",value:function(){return this.context=void 0,(0,r.Z)((0,o.Z)(n.prototype),"detach",this).call(this)}}]),n}(h),m=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e){var i;return(0,l.Z)(this,n),(i=t.call(this)).element=e instanceof u.SBq?e.nativeElement:e,i}return n}(h),g=function(){function e(){(0,l.Z)(this,e),this._isDisposed=!1,this.attachDomPortal=null}return(0,c.Z)(e,[{key:"hasAttached",value:function(){return!!this._attachedPortal}},{key:"attach",value:function(e){return e instanceof p?(this._attachedPortal=e,this.attachComponentPortal(e)):e instanceof f?(this._attachedPortal=e,this.attachTemplatePortal(e)):this.attachDomPortal&&e instanceof m?(this._attachedPortal=e,this.attachDomPortal(e)):void 0}},{key:"detach",value:function(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}},{key:"dispose",value:function(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}},{key:"setDisposeFn",value:function(e){this._disposeFn=e}},{key:"_invokeDisposeFn",value:function(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}]),e}(),v=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,a,s,c,u){var d,h;return(0,l.Z)(this,n),(h=t.call(this)).outletElement=e,h._componentFactoryResolver=a,h._appRef=s,h._defaultInjector=c,h.attachDomPortal=function(e){var t=e.element,a=h._document.createComment("dom-portal");t.parentNode.insertBefore(a,t),h.outletElement.appendChild(t),h._attachedPortal=e,(0,r.Z)((d=(0,i.Z)(h),(0,o.Z)(n.prototype)),"setDisposeFn",d).call(d,function(){a.parentNode&&a.parentNode.replaceChild(t,a)})},h._document=u,h}return(0,c.Z)(n,[{key:"attachComponentPortal",value:function(e){var t,n=this,i=(e.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(e.component);return e.viewContainerRef?(t=e.viewContainerRef.createComponent(i,e.viewContainerRef.length,e.injector||e.viewContainerRef.injector),this.setDisposeFn(function(){return t.destroy()})):(t=i.create(e.injector||this._defaultInjector),this._appRef.attachView(t.hostView),this.setDisposeFn(function(){n._appRef.detachView(t.hostView),t.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(t)),this._attachedPortal=e,t}},{key:"attachTemplatePortal",value:function(e){var t=this,n=e.viewContainerRef,i=n.createEmbeddedView(e.templateRef,e.context);return i.rootNodes.forEach(function(e){return t.outletElement.appendChild(e)}),i.detectChanges(),this.setDisposeFn(function(){var e=n.indexOf(i);-1!==e&&n.remove(e)}),this._attachedPortal=e,i}},{key:"dispose",value:function(){(0,r.Z)((0,o.Z)(n.prototype),"dispose",this).call(this),null!=this.outletElement.parentNode&&this.outletElement.parentNode.removeChild(this.outletElement)}},{key:"_getComponentRootNode",value:function(e){return e.hostView.rootNodes[0]}}]),n}(g),y=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i){return(0,l.Z)(this,n),t.call(this,e,i)}return n}(f);return e.\u0275fac=function(t){return new(t||e)(u.Y36(u.Rgc),u.Y36(u.s_b))},e.\u0275dir=u.lG2({type:e,selectors:[["","cdkPortal",""]],exportAs:["cdkPortal"],features:[u.qOj]}),e}(),_=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,a,s){var c,d;return(0,l.Z)(this,n),(d=t.call(this))._componentFactoryResolver=e,d._viewContainerRef=a,d._isInitialized=!1,d.attached=new u.vpe,d.attachDomPortal=function(e){var t=e.element,a=d._document.createComment("dom-portal");e.setAttachedHost((0,i.Z)(d)),t.parentNode.insertBefore(a,t),d._getRootNode().appendChild(t),d._attachedPortal=e,(0,r.Z)((c=(0,i.Z)(d),(0,o.Z)(n.prototype)),"setDisposeFn",c).call(c,function(){a.parentNode&&a.parentNode.replaceChild(t,a)})},d._document=s,d}return(0,c.Z)(n,[{key:"portal",get:function(){return this._attachedPortal},set:function(e){(!this.hasAttached()||e||this._isInitialized)&&(this.hasAttached()&&(0,r.Z)((0,o.Z)(n.prototype),"detach",this).call(this),e&&(0,r.Z)((0,o.Z)(n.prototype),"attach",this).call(this,e),this._attachedPortal=e)}},{key:"attachedRef",get:function(){return this._attachedRef}},{key:"ngOnInit",value:function(){this._isInitialized=!0}},{key:"ngOnDestroy",value:function(){(0,r.Z)((0,o.Z)(n.prototype),"dispose",this).call(this),this._attachedPortal=null,this._attachedRef=null}},{key:"attachComponentPortal",value:function(e){e.setAttachedHost(this);var t=null!=e.viewContainerRef?e.viewContainerRef:this._viewContainerRef,i=(e.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(e.component),a=t.createComponent(i,t.length,e.injector||t.injector);return t!==this._viewContainerRef&&this._getRootNode().appendChild(a.hostView.rootNodes[0]),(0,r.Z)((0,o.Z)(n.prototype),"setDisposeFn",this).call(this,function(){return a.destroy()}),this._attachedPortal=e,this._attachedRef=a,this.attached.emit(a),a}},{key:"attachTemplatePortal",value:function(e){var t=this;e.setAttachedHost(this);var i=this._viewContainerRef.createEmbeddedView(e.templateRef,e.context);return(0,r.Z)((0,o.Z)(n.prototype),"setDisposeFn",this).call(this,function(){return t._viewContainerRef.clear()}),this._attachedPortal=e,this._attachedRef=i,this.attached.emit(i),i}},{key:"_getRootNode",value:function(){var e=this._viewContainerRef.element.nativeElement;return e.nodeType===e.ELEMENT_NODE?e:e.parentNode}}]),n}(g);return e.\u0275fac=function(t){return new(t||e)(u.Y36(u._Vd),u.Y36(u.s_b),u.Y36(d.K0))},e.\u0275dir=u.lG2({type:e,selectors:[["","cdkPortalOutlet",""]],inputs:{portal:["cdkPortalOutlet","portal"]},outputs:{attached:"attached"},exportAs:["cdkPortalOutlet"],features:[u.qOj]}),e}(),b=function(){var e=function e(){(0,l.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=u.oAB({type:e}),e.\u0275inj=u.cJS({}),e}()},28722:function(e,t,n){"use strict";n.d(t,{PQ:function(){return y},ZD:function(){return b},mF:function(){return v},Cl:function(){return w},rL:function(){return _}}),n(10270),n(20454),n(51751),n(12558),n(49843),n(37859);var i=n(61680),r=n(11254),o=n(78081),a=n(37602),s=n(68707),l=n(43161),c=n(89797),u=n(33090),d=(n(58172),n(8285),n(5051),n(17504),n(76161),n(54562)),h=n(58780),p=n(44213),f=(n(57682),n(4363),n(34487),n(61106),n(15427)),m=n(40098),g=n(8392);n(37429);var v=function(){var e=function(){function e(t,n,r){(0,i.Z)(this,e),this._ngZone=t,this._platform=n,this._scrolled=new s.xQ,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map,this._document=r}return(0,r.Z)(e,[{key:"register",value:function(e){var t=this;this.scrollContainers.has(e)||this.scrollContainers.set(e,e.elementScrolled().subscribe(function(){return t._scrolled.next(e)}))}},{key:"deregister",value:function(e){var t=this.scrollContainers.get(e);t&&(t.unsubscribe(),this.scrollContainers.delete(e))}},{key:"scrolled",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:20;return this._platform.isBrowser?new c.y(function(n){e._globalSubscription||e._addGlobalListener();var i=t>0?e._scrolled.pipe((0,d.e)(t)).subscribe(n):e._scrolled.subscribe(n);return e._scrolledCount++,function(){i.unsubscribe(),e._scrolledCount--,e._scrolledCount||e._removeGlobalListener()}}):(0,l.of)()}},{key:"ngOnDestroy",value:function(){var e=this;this._removeGlobalListener(),this.scrollContainers.forEach(function(t,n){return e.deregister(n)}),this._scrolled.complete()}},{key:"ancestorScrolled",value:function(e,t){var n=this.getAncestorScrollContainers(e);return this.scrolled(t).pipe((0,h.h)(function(e){return!e||n.indexOf(e)>-1}))}},{key:"getAncestorScrollContainers",value:function(e){var t=this,n=[];return this.scrollContainers.forEach(function(i,r){t._scrollableContainsElement(r,e)&&n.push(r)}),n}},{key:"_getWindow",value:function(){return this._document.defaultView||window}},{key:"_scrollableContainsElement",value:function(e,t){var n=(0,o.fI)(t),i=e.getElementRef().nativeElement;do{if(n==i)return!0}while(n=n.parentElement);return!1}},{key:"_addGlobalListener",value:function(){var e=this;this._globalSubscription=this._ngZone.runOutsideAngular(function(){var t=e._getWindow();return(0,u.R)(t.document,"scroll").subscribe(function(){return e._scrolled.next()})})}},{key:"_removeGlobalListener",value:function(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(a.LFG(a.R0b),a.LFG(f.t4),a.LFG(m.K0,8))},e.\u0275prov=a.Yz7({factory:function(){return new e(a.LFG(a.R0b),a.LFG(f.t4),a.LFG(m.K0,8))},token:e,providedIn:"root"}),e}(),y=function(){var e=function(){function e(t,n,r,o){var a=this;(0,i.Z)(this,e),this.elementRef=t,this.scrollDispatcher=n,this.ngZone=r,this.dir=o,this._destroyed=new s.xQ,this._elementScrolled=new c.y(function(e){return a.ngZone.runOutsideAngular(function(){return(0,u.R)(a.elementRef.nativeElement,"scroll").pipe((0,p.R)(a._destroyed)).subscribe(e)})})}return(0,r.Z)(e,[{key:"ngOnInit",value:function(){this.scrollDispatcher.register(this)}},{key:"ngOnDestroy",value:function(){this.scrollDispatcher.deregister(this),this._destroyed.next(),this._destroyed.complete()}},{key:"elementScrolled",value:function(){return this._elementScrolled}},{key:"getElementRef",value:function(){return this.elementRef}},{key:"scrollTo",value:function(e){var t=this.elementRef.nativeElement,n=this.dir&&"rtl"==this.dir.value;null==e.left&&(e.left=n?e.end:e.start),null==e.right&&(e.right=n?e.start:e.end),null!=e.bottom&&(e.top=t.scrollHeight-t.clientHeight-e.bottom),n&&0!=(0,f._i)()?(null!=e.left&&(e.right=t.scrollWidth-t.clientWidth-e.left),2==(0,f._i)()?e.left=e.right:1==(0,f._i)()&&(e.left=e.right?-e.right:e.right)):null!=e.right&&(e.left=t.scrollWidth-t.clientWidth-e.right),this._applyScrollToOptions(e)}},{key:"_applyScrollToOptions",value:function(e){var t=this.elementRef.nativeElement;(0,f.Mq)()?t.scrollTo(e):(null!=e.top&&(t.scrollTop=e.top),null!=e.left&&(t.scrollLeft=e.left))}},{key:"measureScrollOffset",value:function(e){var t="left",n="right",i=this.elementRef.nativeElement;if("top"==e)return i.scrollTop;if("bottom"==e)return i.scrollHeight-i.clientHeight-i.scrollTop;var r=this.dir&&"rtl"==this.dir.value;return"start"==e?e=r?n:t:"end"==e&&(e=r?t:n),r&&2==(0,f._i)()?e==t?i.scrollWidth-i.clientWidth-i.scrollLeft:i.scrollLeft:r&&1==(0,f._i)()?e==t?i.scrollLeft+i.scrollWidth-i.clientWidth:-i.scrollLeft:e==t?i.scrollLeft:i.scrollWidth-i.clientWidth-i.scrollLeft}}]),e}();return e.\u0275fac=function(t){return new(t||e)(a.Y36(a.SBq),a.Y36(v),a.Y36(a.R0b),a.Y36(g.Is,8))},e.\u0275dir=a.lG2({type:e,selectors:[["","cdk-scrollable",""],["","cdkScrollable",""]]}),e}(),_=function(){var e=function(){function e(t,n,r){var o=this;(0,i.Z)(this,e),this._platform=t,this._change=new s.xQ,this._changeListener=function(e){o._change.next(e)},this._document=r,n.runOutsideAngular(function(){if(t.isBrowser){var e=o._getWindow();e.addEventListener("resize",o._changeListener),e.addEventListener("orientationchange",o._changeListener)}o.change().subscribe(function(){return o._viewportSize=null})})}return(0,r.Z)(e,[{key:"ngOnDestroy",value:function(){if(this._platform.isBrowser){var e=this._getWindow();e.removeEventListener("resize",this._changeListener),e.removeEventListener("orientationchange",this._changeListener)}this._change.complete()}},{key:"getViewportSize",value:function(){this._viewportSize||this._updateViewportSize();var e={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),e}},{key:"getViewportRect",value:function(){var e=this.getViewportScrollPosition(),t=this.getViewportSize(),n=t.width,i=t.height;return{top:e.top,left:e.left,bottom:e.top+i,right:e.left+n,height:i,width:n}}},{key:"getViewportScrollPosition",value:function(){if(!this._platform.isBrowser)return{top:0,left:0};var e=this._document,t=this._getWindow(),n=e.documentElement,i=n.getBoundingClientRect();return{top:-i.top||e.body.scrollTop||t.scrollY||n.scrollTop||0,left:-i.left||e.body.scrollLeft||t.scrollX||n.scrollLeft||0}}},{key:"change",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:20;return e>0?this._change.pipe((0,d.e)(e)):this._change}},{key:"_getWindow",value:function(){return this._document.defaultView||window}},{key:"_updateViewportSize",value:function(){var e=this._getWindow();this._viewportSize=this._platform.isBrowser?{width:e.innerWidth,height:e.innerHeight}:{width:0,height:0}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(a.LFG(f.t4),a.LFG(a.R0b),a.LFG(m.K0,8))},e.\u0275prov=a.Yz7({factory:function(){return new e(a.LFG(f.t4),a.LFG(a.R0b),a.LFG(m.K0,8))},token:e,providedIn:"root"}),e}(),b=function(){var e=function e(){(0,i.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=a.oAB({type:e}),e.\u0275inj=a.cJS({}),e}(),w=function(){var e=function e(){(0,i.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=a.oAB({type:e}),e.\u0275inj=a.cJS({imports:[[g.vT,f.ud,b],g.vT,b]}),e}()},78081:function(e,t,n){"use strict";n.d(t,{t6:function(){return a},Eq:function(){return s},Ig:function(){return r},HM:function(){return l},fI:function(){return c},su:function(){return o}});var i=n(37602);function r(e){return null!=e&&"false"!=="".concat(e)}function o(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return a(e)?Number(e):t}function a(e){return!isNaN(parseFloat(e))&&!isNaN(Number(e))}function s(e){return Array.isArray(e)?e:[e]}function l(e){return null==e?"":"string"==typeof e?e:"".concat(e,"px")}function c(e){return e instanceof i.SBq?e.nativeElement:e}},40098:function(e,t,n){"use strict";n.d(t,{mr:function(){return T},Ov:function(){return $},ez:function(){return ee},K0:function(){return f},Do:function(){return Z},V_:function(){return v},Ye:function(){return M},S$:function(){return C},mk:function(){return R},sg:function(){return F},O5:function(){return j},PC:function(){return W},RF:function(){return Y},n9:function(){return J},ED:function(){return G},tP:function(){return V},b0:function(){return A},lw:function(){return m},EM:function(){return ie},JF:function(){return ae},NF:function(){return ne},w_:function(){return p},bD:function(){return te},q:function(){return d},Mx:function(){return D},HT:function(){return h}});var i=n(20454),r=n(10270),o=n(49843),a=n(37859),s=n(11254),l=n(61680),c=n(37602),u=null;function d(){return u}function h(e){u||(u=e)}var p=function e(){(0,l.Z)(this,e)},f=new c.OlP("DocumentToken"),m=function(){var e=function(){function e(){(0,l.Z)(this,e)}return(0,s.Z)(e,[{key:"historyGo",value:function(e){throw new Error("Not implemented")}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=(0,c.Yz7)({factory:g,token:e,providedIn:"platform"}),e}();function g(){return(0,c.LFG)(y)}var v=new c.OlP("Location Initialized"),y=function(){var e=function(e){(0,o.Z)(n,e);var t=(0,a.Z)(n);function n(e){var i;return(0,l.Z)(this,n),(i=t.call(this))._doc=e,i._init(),i}return(0,s.Z)(n,[{key:"_init",value:function(){this.location=window.location,this._history=window.history}},{key:"getBaseHrefFromDOM",value:function(){return d().getBaseHref(this._doc)}},{key:"onPopState",value:function(e){var t=d().getGlobalEventTarget(this._doc,"window");return t.addEventListener("popstate",e,!1),function(){return t.removeEventListener("popstate",e)}}},{key:"onHashChange",value:function(e){var t=d().getGlobalEventTarget(this._doc,"window");return t.addEventListener("hashchange",e,!1),function(){return t.removeEventListener("hashchange",e)}}},{key:"href",get:function(){return this.location.href}},{key:"protocol",get:function(){return this.location.protocol}},{key:"hostname",get:function(){return this.location.hostname}},{key:"port",get:function(){return this.location.port}},{key:"pathname",get:function(){return this.location.pathname},set:function(e){this.location.pathname=e}},{key:"search",get:function(){return this.location.search}},{key:"hash",get:function(){return this.location.hash}},{key:"pushState",value:function(e,t,n){_()?this._history.pushState(e,t,n):this.location.hash=n}},{key:"replaceState",value:function(e,t,n){_()?this._history.replaceState(e,t,n):this.location.hash=n}},{key:"forward",value:function(){this._history.forward()}},{key:"back",value:function(){this._history.back()}},{key:"historyGo",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this._history.go(e)}},{key:"getState",value:function(){return this._history.state}}]),n}(m);return e.\u0275fac=function(t){return new(t||e)(c.LFG(f))},e.\u0275prov=(0,c.Yz7)({factory:b,token:e,providedIn:"platform"}),e}();function _(){return!!window.history.pushState}function b(){return new y((0,c.LFG)(f))}function w(e,t){if(0==e.length)return t;if(0==t.length)return e;var n=0;return e.endsWith("/")&&n++,t.startsWith("/")&&n++,2==n?e+t.substring(1):1==n?e+t:e+"/"+t}function S(e){var t=e.match(/#|\?|$/),n=t&&t.index||e.length;return e.slice(0,n-("/"===e[n-1]?1:0))+e.slice(n)}function x(e){return e&&"?"!==e[0]?"?"+e:e}var C=function(){var e=function(){function e(){(0,l.Z)(this,e)}return(0,s.Z)(e,[{key:"historyGo",value:function(e){throw new Error("Not implemented")}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=(0,c.Yz7)({factory:k,token:e,providedIn:"root"}),e}();function k(e){var t=(0,c.LFG)(f).location;return new A((0,c.LFG)(m),t&&t.origin||"")}var T=new c.OlP("appBaseHref"),A=function(){var e=function(e){(0,o.Z)(n,e);var t=(0,a.Z)(n);function n(e,i){var r;if((0,l.Z)(this,n),(r=t.call(this))._platformLocation=e,r._removeListenerFns=[],null==i&&(i=r._platformLocation.getBaseHrefFromDOM()),null==i)throw new Error("No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document.");return r._baseHref=i,r}return(0,s.Z)(n,[{key:"ngOnDestroy",value:function(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}},{key:"onPopState",value:function(e){this._removeListenerFns.push(this._platformLocation.onPopState(e),this._platformLocation.onHashChange(e))}},{key:"getBaseHref",value:function(){return this._baseHref}},{key:"prepareExternalUrl",value:function(e){return w(this._baseHref,e)}},{key:"path",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this._platformLocation.pathname+x(this._platformLocation.search),n=this._platformLocation.hash;return n&&e?"".concat(t).concat(n):t}},{key:"pushState",value:function(e,t,n,i){var r=this.prepareExternalUrl(n+x(i));this._platformLocation.pushState(e,t,r)}},{key:"replaceState",value:function(e,t,n,i){var r=this.prepareExternalUrl(n+x(i));this._platformLocation.replaceState(e,t,r)}},{key:"forward",value:function(){this._platformLocation.forward()}},{key:"back",value:function(){this._platformLocation.back()}},{key:"historyGo",value:function(){var e,t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;null===(t=(e=this._platformLocation).historyGo)||void 0===t||t.call(e,n)}}]),n}(C);return e.\u0275fac=function(t){return new(t||e)(c.LFG(m),c.LFG(T,8))},e.\u0275prov=c.Yz7({token:e,factory:e.\u0275fac}),e}(),Z=function(){var e=function(e){(0,o.Z)(n,e);var t=(0,a.Z)(n);function n(e,i){var r;return(0,l.Z)(this,n),(r=t.call(this))._platformLocation=e,r._baseHref="",r._removeListenerFns=[],null!=i&&(r._baseHref=i),r}return(0,s.Z)(n,[{key:"ngOnDestroy",value:function(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}},{key:"onPopState",value:function(e){this._removeListenerFns.push(this._platformLocation.onPopState(e),this._platformLocation.onHashChange(e))}},{key:"getBaseHref",value:function(){return this._baseHref}},{key:"path",value:function(){var e=this._platformLocation.hash;return null==e&&(e="#"),e.length>0?e.substring(1):e}},{key:"prepareExternalUrl",value:function(e){var t=w(this._baseHref,e);return t.length>0?"#"+t:t}},{key:"pushState",value:function(e,t,n,i){var r=this.prepareExternalUrl(n+x(i));0==r.length&&(r=this._platformLocation.pathname),this._platformLocation.pushState(e,t,r)}},{key:"replaceState",value:function(e,t,n,i){var r=this.prepareExternalUrl(n+x(i));0==r.length&&(r=this._platformLocation.pathname),this._platformLocation.replaceState(e,t,r)}},{key:"forward",value:function(){this._platformLocation.forward()}},{key:"back",value:function(){this._platformLocation.back()}},{key:"historyGo",value:function(){var e,t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;null===(t=(e=this._platformLocation).historyGo)||void 0===t||t.call(e,n)}}]),n}(C);return e.\u0275fac=function(t){return new(t||e)(c.LFG(m),c.LFG(T,8))},e.\u0275prov=c.Yz7({token:e,factory:e.\u0275fac}),e}(),M=function(){var e=function(){function e(t,n){var i=this;(0,l.Z)(this,e),this._subject=new c.vpe,this._urlChangeListeners=[],this._platformStrategy=t;var r=this._platformStrategy.getBaseHref();this._platformLocation=n,this._baseHref=S(E(r)),this._platformStrategy.onPopState(function(e){i._subject.emit({url:i.path(!0),pop:!0,state:e.state,type:e.type})})}return(0,s.Z)(e,[{key:"path",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return this.normalize(this._platformStrategy.path(e))}},{key:"getState",value:function(){return this._platformLocation.getState()}},{key:"isCurrentPathEqualTo",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return this.path()==this.normalize(e+x(t))}},{key:"normalize",value:function(t){return e.stripTrailingSlash(function(e,t){return e&&t.startsWith(e)?t.substring(e.length):t}(this._baseHref,E(t)))}},{key:"prepareExternalUrl",value:function(e){return e&&"/"!==e[0]&&(e="/"+e),this._platformStrategy.prepareExternalUrl(e)}},{key:"go",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;this._platformStrategy.pushState(n,"",e,t),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+x(t)),n)}},{key:"replaceState",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;this._platformStrategy.replaceState(n,"",e,t),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+x(t)),n)}},{key:"forward",value:function(){this._platformStrategy.forward()}},{key:"back",value:function(){this._platformStrategy.back()}},{key:"historyGo",value:function(){var e,t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;null===(t=(e=this._platformStrategy).historyGo)||void 0===t||t.call(e,n)}},{key:"onUrlChange",value:function(e){var t=this;this._urlChangeListeners.push(e),this._urlChangeSubscription||(this._urlChangeSubscription=this.subscribe(function(e){t._notifyUrlChangeListeners(e.url,e.state)}))}},{key:"_notifyUrlChangeListeners",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;this._urlChangeListeners.forEach(function(n){return n(e,t)})}},{key:"subscribe",value:function(e,t,n){return this._subject.subscribe({next:e,error:t,complete:n})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(c.LFG(C),c.LFG(m))},e.normalizeQueryParams=x,e.joinWithSlash=w,e.stripTrailingSlash=S,e.\u0275prov=(0,c.Yz7)({factory:O,token:e,providedIn:"root"}),e}();function O(){return new M((0,c.LFG)(C),(0,c.LFG)(m))}function E(e){return e.replace(/\/index.html$/,"")}var P=function(e){return e[e.Zero=0]="Zero",e[e.One=1]="One",e[e.Two=2]="Two",e[e.Few=3]="Few",e[e.Many=4]="Many",e[e.Other=5]="Other",e}({}),I=c.kL8,q=function e(){(0,l.Z)(this,e)},N=function(){var e=function(e){(0,o.Z)(n,e);var t=(0,a.Z)(n);function n(e){var i;return(0,l.Z)(this,n),(i=t.call(this)).locale=e,i}return(0,s.Z)(n,[{key:"getPluralCategory",value:function(e,t){switch(I(t||this.locale)(e)){case P.Zero:return"zero";case P.One:return"one";case P.Two:return"two";case P.Few:return"few";case P.Many:return"many";default:return"other"}}}]),n}(q);return e.\u0275fac=function(t){return new(t||e)(c.LFG(c.soG))},e.\u0275prov=c.Yz7({token:e,factory:e.\u0275fac}),e}();function D(e,t){t=encodeURIComponent(t);var n,o=(0,i.Z)(e.split(";"));try{for(o.s();!(n=o.n()).done;){var a=n.value,s=a.indexOf("="),l=-1==s?[a,""]:[a.slice(0,s),a.slice(s+1)],c=(0,r.Z)(l,2),u=c[1];if(c[0].trim()===t)return decodeURIComponent(u)}}catch(d){o.e(d)}finally{o.f()}return null}var R=function(){var e=function(){function e(t,n,i,r){(0,l.Z)(this,e),this._iterableDiffers=t,this._keyValueDiffers=n,this._ngEl=i,this._renderer=r,this._iterableDiffer=null,this._keyValueDiffer=null,this._initialClasses=[],this._rawClass=null}return(0,s.Z)(e,[{key:"klass",set:function(e){this._removeClasses(this._initialClasses),this._initialClasses="string"==typeof e?e.split(/\s+/):[],this._applyClasses(this._initialClasses),this._applyClasses(this._rawClass)}},{key:"ngClass",set:function(e){this._removeClasses(this._rawClass),this._applyClasses(this._initialClasses),this._iterableDiffer=null,this._keyValueDiffer=null,this._rawClass="string"==typeof e?e.split(/\s+/):e,this._rawClass&&((0,c.sIi)(this._rawClass)?this._iterableDiffer=this._iterableDiffers.find(this._rawClass).create():this._keyValueDiffer=this._keyValueDiffers.find(this._rawClass).create())}},{key:"ngDoCheck",value:function(){if(this._iterableDiffer){var e=this._iterableDiffer.diff(this._rawClass);e&&this._applyIterableChanges(e)}else if(this._keyValueDiffer){var t=this._keyValueDiffer.diff(this._rawClass);t&&this._applyKeyValueChanges(t)}}},{key:"_applyKeyValueChanges",value:function(e){var t=this;e.forEachAddedItem(function(e){return t._toggleClass(e.key,e.currentValue)}),e.forEachChangedItem(function(e){return t._toggleClass(e.key,e.currentValue)}),e.forEachRemovedItem(function(e){e.previousValue&&t._toggleClass(e.key,!1)})}},{key:"_applyIterableChanges",value:function(e){var t=this;e.forEachAddedItem(function(e){if("string"!=typeof e.item)throw new Error("NgClass can only toggle CSS classes expressed as strings, got ".concat((0,c.AaK)(e.item)));t._toggleClass(e.item,!0)}),e.forEachRemovedItem(function(e){return t._toggleClass(e.item,!1)})}},{key:"_applyClasses",value:function(e){var t=this;e&&(Array.isArray(e)||e instanceof Set?e.forEach(function(e){return t._toggleClass(e,!0)}):Object.keys(e).forEach(function(n){return t._toggleClass(n,!!e[n])}))}},{key:"_removeClasses",value:function(e){var t=this;e&&(Array.isArray(e)||e instanceof Set?e.forEach(function(e){return t._toggleClass(e,!1)}):Object.keys(e).forEach(function(e){return t._toggleClass(e,!1)}))}},{key:"_toggleClass",value:function(e,t){var n=this;(e=e.trim())&&e.split(/\s+/g).forEach(function(e){t?n._renderer.addClass(n._ngEl.nativeElement,e):n._renderer.removeClass(n._ngEl.nativeElement,e)})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(c.Y36(c.ZZ4),c.Y36(c.aQg),c.Y36(c.SBq),c.Y36(c.Qsj))},e.\u0275dir=c.lG2({type:e,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"}}),e}(),L=function(){function e(t,n,i,r){(0,l.Z)(this,e),this.$implicit=t,this.ngForOf=n,this.index=i,this.count=r}return(0,s.Z)(e,[{key:"first",get:function(){return 0===this.index}},{key:"last",get:function(){return this.index===this.count-1}},{key:"even",get:function(){return this.index%2==0}},{key:"odd",get:function(){return!this.even}}]),e}(),F=function(){var e=function(){function e(t,n,i){(0,l.Z)(this,e),this._viewContainer=t,this._template=n,this._differs=i,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}return(0,s.Z)(e,[{key:"ngForOf",set:function(e){this._ngForOf=e,this._ngForOfDirty=!0}},{key:"ngForTrackBy",get:function(){return this._trackByFn},set:function(e){this._trackByFn=e}},{key:"ngForTemplate",set:function(e){e&&(this._template=e)}},{key:"ngDoCheck",value:function(){if(this._ngForOfDirty){this._ngForOfDirty=!1;var e=this._ngForOf;if(!this._differ&&e)try{this._differ=this._differs.find(e).create(this.ngForTrackBy)}catch(i){throw new Error("Cannot find a differ supporting object '".concat(e,"' of type '").concat((t=e).name||typeof t,"'. NgFor only supports binding to Iterables such as Arrays."))}}var t;if(this._differ){var n=this._differ.diff(this._ngForOf);n&&this._applyChanges(n)}}},{key:"_applyChanges",value:function(e){var t=this,n=[];e.forEachOperation(function(e,i,r){if(null==e.previousIndex){var o=t._viewContainer.createEmbeddedView(t._template,new L(null,t._ngForOf,-1,-1),null===r?void 0:r),a=new B(e,o);n.push(a)}else if(null==r)t._viewContainer.remove(null===i?void 0:i);else if(null!==i){var s=t._viewContainer.get(i);t._viewContainer.move(s,r);var l=new B(e,s);n.push(l)}});for(var i=0;i0){var i=e.slice(0,t),r=i.toLowerCase(),o=e.slice(t+1).trim();n.maybeSetNormalizedName(i,r),n.headers.has(r)?n.headers.get(r).push(o):n.headers.set(r,[o])}})}:function(){n.headers=new Map,Object.keys(t).forEach(function(e){var i=t[e],r=e.toLowerCase();"string"==typeof i&&(i=[i]),i.length>0&&(n.headers.set(r,i),n.maybeSetNormalizedName(e,r))})}:this.headers=new Map}return(0,s.Z)(e,[{key:"has",value:function(e){return this.init(),this.headers.has(e.toLowerCase())}},{key:"get",value:function(e){this.init();var t=this.headers.get(e.toLowerCase());return t&&t.length>0?t[0]:null}},{key:"keys",value:function(){return this.init(),Array.from(this.normalizedNames.values())}},{key:"getAll",value:function(e){return this.init(),this.headers.get(e.toLowerCase())||null}},{key:"append",value:function(e,t){return this.clone({name:e,value:t,op:"a"})}},{key:"set",value:function(e,t){return this.clone({name:e,value:t,op:"s"})}},{key:"delete",value:function(e,t){return this.clone({name:e,value:t,op:"d"})}},{key:"maybeSetNormalizedName",value:function(e,t){this.normalizedNames.has(t)||this.normalizedNames.set(t,e)}},{key:"init",value:function(){var t=this;this.lazyInit&&(this.lazyInit instanceof e?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(function(e){return t.applyUpdate(e)}),this.lazyUpdate=null))}},{key:"copyFrom",value:function(e){var t=this;e.init(),Array.from(e.headers.keys()).forEach(function(n){t.headers.set(n,e.headers.get(n)),t.normalizedNames.set(n,e.normalizedNames.get(n))})}},{key:"clone",value:function(t){var n=new e;return n.lazyInit=this.lazyInit&&this.lazyInit instanceof e?this.lazyInit:this,n.lazyUpdate=(this.lazyUpdate||[]).concat([t]),n}},{key:"applyUpdate",value:function(e){var t=e.name.toLowerCase();switch(e.op){case"a":case"s":var n=e.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(e.name,t);var i=("a"===e.op?this.headers.get(t):void 0)||[];i.push.apply(i,(0,a.Z)(n)),this.headers.set(t,i);break;case"d":var r=e.value;if(r){var o=this.headers.get(t);if(!o)return;0===(o=o.filter(function(e){return-1===r.indexOf(e)})).length?(this.headers.delete(t),this.normalizedNames.delete(t)):this.headers.set(t,o)}else this.headers.delete(t),this.normalizedNames.delete(t)}}},{key:"forEach",value:function(e){var t=this;this.init(),Array.from(this.normalizedNames.keys()).forEach(function(n){return e(t.normalizedNames.get(n),t.headers.get(n))})}}]),e}(),_=function(){function e(){(0,l.Z)(this,e)}return(0,s.Z)(e,[{key:"encodeKey",value:function(e){return w(e)}},{key:"encodeValue",value:function(e){return w(e)}},{key:"decodeKey",value:function(e){return decodeURIComponent(e)}},{key:"decodeValue",value:function(e){return decodeURIComponent(e)}}]),e}();function b(e,t){var n=new Map;return e.length>0&&e.replace(/^\?/,"").split("&").forEach(function(e){var i=e.indexOf("="),r=-1==i?[t.decodeKey(e),""]:[t.decodeKey(e.slice(0,i)),t.decodeValue(e.slice(i+1))],a=(0,o.Z)(r,2),s=a[0],l=a[1],c=n.get(s)||[];c.push(l),n.set(s,c)}),n}function w(e){return encodeURIComponent(e).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,"/")}function S(e){return"".concat(e)}var x=function(){function e(){var t=this,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if((0,l.Z)(this,e),this.updates=null,this.cloneFrom=null,this.encoder=n.encoder||new _,n.fromString){if(n.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=b(n.fromString,this.encoder)}else n.fromObject?(this.map=new Map,Object.keys(n.fromObject).forEach(function(e){var i=n.fromObject[e];t.map.set(e,Array.isArray(i)?i:[i])})):this.map=null}return(0,s.Z)(e,[{key:"has",value:function(e){return this.init(),this.map.has(e)}},{key:"get",value:function(e){this.init();var t=this.map.get(e);return t?t[0]:null}},{key:"getAll",value:function(e){return this.init(),this.map.get(e)||null}},{key:"keys",value:function(){return this.init(),Array.from(this.map.keys())}},{key:"append",value:function(e,t){return this.clone({param:e,value:t,op:"a"})}},{key:"appendAll",value:function(e){var t=[];return Object.keys(e).forEach(function(n){var i=e[n];Array.isArray(i)?i.forEach(function(e){t.push({param:n,value:e,op:"a"})}):t.push({param:n,value:i,op:"a"})}),this.clone(t)}},{key:"set",value:function(e,t){return this.clone({param:e,value:t,op:"s"})}},{key:"delete",value:function(e,t){return this.clone({param:e,value:t,op:"d"})}},{key:"toString",value:function(){var e=this;return this.init(),this.keys().map(function(t){var n=e.encoder.encodeKey(t);return e.map.get(t).map(function(t){return n+"="+e.encoder.encodeValue(t)}).join("&")}).filter(function(e){return""!==e}).join("&")}},{key:"clone",value:function(t){var n=new e({encoder:this.encoder});return n.cloneFrom=this.cloneFrom||this,n.updates=(this.updates||[]).concat(t),n}},{key:"init",value:function(){var e=this;null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(function(t){return e.map.set(t,e.cloneFrom.map.get(t))}),this.updates.forEach(function(t){switch(t.op){case"a":case"s":var n=("a"===t.op?e.map.get(t.param):void 0)||[];n.push(S(t.value)),e.map.set(t.param,n);break;case"d":if(void 0===t.value){e.map.delete(t.param);break}var i=e.map.get(t.param)||[],r=i.indexOf(S(t.value));-1!==r&&i.splice(r,1),i.length>0?e.map.set(t.param,i):e.map.delete(t.param)}}),this.cloneFrom=this.updates=null)}}]),e}(),C=function(){function e(){(0,l.Z)(this,e),this.map=new Map}return(0,s.Z)(e,[{key:"set",value:function(e,t){return this.map.set(e,t),this}},{key:"get",value:function(e){return this.map.has(e)||this.map.set(e,e.defaultValue()),this.map.get(e)}},{key:"delete",value:function(e){return this.map.delete(e),this}},{key:"keys",value:function(){return this.map.keys()}}]),e}();function k(e){return"undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer}function T(e){return"undefined"!=typeof Blob&&e instanceof Blob}function A(e){return"undefined"!=typeof FormData&&e instanceof FormData}var Z=function(){function e(t,n,i,r){var o;if((0,l.Z)(this,e),this.url=n,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(e){switch(e){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||r?(this.body=void 0!==i?i:null,o=r):o=i,o&&(this.reportProgress=!!o.reportProgress,this.withCredentials=!!o.withCredentials,o.responseType&&(this.responseType=o.responseType),o.headers&&(this.headers=o.headers),o.context&&(this.context=o.context),o.params&&(this.params=o.params)),this.headers||(this.headers=new y),this.context||(this.context=new C),this.params){var a=this.params.toString();if(0===a.length)this.urlWithParams=n;else{var s=n.indexOf("?");this.urlWithParams=n+(-1===s?"?":s0&&void 0!==arguments[0]?arguments[0]:{},i=n.method||this.method,r=n.url||this.url,o=n.responseType||this.responseType,a=void 0!==n.body?n.body:this.body,s=void 0!==n.withCredentials?n.withCredentials:this.withCredentials,l=void 0!==n.reportProgress?n.reportProgress:this.reportProgress,c=n.headers||this.headers,u=n.params||this.params,d=null!==(t=n.context)&&void 0!==t?t:this.context;return void 0!==n.setHeaders&&(c=Object.keys(n.setHeaders).reduce(function(e,t){return e.set(t,n.setHeaders[t])},c)),n.setParams&&(u=Object.keys(n.setParams).reduce(function(e,t){return e.set(t,n.setParams[t])},u)),new e(i,r,a,{params:u,headers:c,context:d,reportProgress:l,responseType:o,withCredentials:s})}}]),e}(),M=function(e){return e[e.Sent=0]="Sent",e[e.UploadProgress=1]="UploadProgress",e[e.ResponseHeader=2]="ResponseHeader",e[e.DownloadProgress=3]="DownloadProgress",e[e.Response=4]="Response",e[e.User=5]="User",e}({}),O=function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:200,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"OK";(0,l.Z)(this,e),this.headers=t.headers||new y,this.status=void 0!==t.status?t.status:n,this.statusText=t.statusText||i,this.url=t.url||null,this.ok=this.status>=200&&this.status<300},E=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(){var e,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,l.Z)(this,n),(e=t.call(this,i)).type=M.ResponseHeader,e}return(0,s.Z)(n,[{key:"clone",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new n({headers:e.headers||this.headers,status:void 0!==e.status?e.status:this.status,statusText:e.statusText||this.statusText,url:e.url||this.url||void 0})}}]),n}(O),P=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(){var e,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,l.Z)(this,n),(e=t.call(this,i)).type=M.Response,e.body=void 0!==i.body?i.body:null,e}return(0,s.Z)(n,[{key:"clone",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new n({body:void 0!==e.body?e.body:this.body,headers:e.headers||this.headers,status:void 0!==e.status?e.status:this.status,statusText:e.statusText||this.statusText,url:e.url||this.url||void 0})}}]),n}(O),I=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e){var i;return(0,l.Z)(this,n),(i=t.call(this,e,0,"Unknown Error")).name="HttpErrorResponse",i.ok=!1,i.message=i.status>=200&&i.status<300?"Http failure during parsing for ".concat(e.url||"(unknown url)"):"Http failure response for ".concat(e.url||"(unknown url)",": ").concat(e.status," ").concat(e.statusText),i.error=e.error||null,i}return n}(O);function q(e,t){return{body:t,headers:e.headers,context:e.context,observe:e.observe,params:e.params,reportProgress:e.reportProgress,responseType:e.responseType,withCredentials:e.withCredentials}}var N=function(){var e=function(){function e(t){(0,l.Z)(this,e),this.handler=t}return(0,s.Z)(e,[{key:"request",value:function(e,t){var n,i=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(e instanceof Z)n=e;else{var o=void 0;o=r.headers instanceof y?r.headers:new y(r.headers);var a=void 0;r.params&&(a=r.params instanceof x?r.params:new x({fromObject:r.params})),n=new Z(e,t,void 0!==r.body?r.body:null,{headers:o,context:r.context,params:a,reportProgress:r.reportProgress,responseType:r.responseType||"json",withCredentials:r.withCredentials})}var s=(0,d.of)(n).pipe((0,p.b)(function(e){return i.handler.handle(e)}));if(e instanceof Z||"events"===r.observe)return s;var l=s.pipe((0,f.h)(function(e){return e instanceof P}));switch(r.observe||"body"){case"body":switch(n.responseType){case"arraybuffer":return l.pipe((0,m.U)(function(e){if(null!==e.body&&!(e.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return e.body}));case"blob":return l.pipe((0,m.U)(function(e){if(null!==e.body&&!(e.body instanceof Blob))throw new Error("Response is not a Blob.");return e.body}));case"text":return l.pipe((0,m.U)(function(e){if(null!==e.body&&"string"!=typeof e.body)throw new Error("Response is not a string.");return e.body}));case"json":default:return l.pipe((0,m.U)(function(e){return e.body}))}case"response":return l;default:throw new Error("Unreachable: unhandled observe type ".concat(r.observe,"}"))}}},{key:"delete",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("DELETE",e,t)}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("GET",e,t)}},{key:"head",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("HEAD",e,t)}},{key:"jsonp",value:function(e,t){return this.request("JSONP",e,{params:(new x).append(t,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}},{key:"options",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("OPTIONS",e,t)}},{key:"patch",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.request("PATCH",e,q(n,t))}},{key:"post",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.request("POST",e,q(n,t))}},{key:"put",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.request("PUT",e,q(n,t))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(u.LFG(g))},e.\u0275prov=u.Yz7({token:e,factory:e.\u0275fac}),e}(),D=function(){function e(t,n){(0,l.Z)(this,e),this.next=t,this.interceptor=n}return(0,s.Z)(e,[{key:"handle",value:function(e){return this.interceptor.intercept(e,this.next)}}]),e}(),R=new u.OlP("HTTP_INTERCEPTORS"),L=function(){var e=function(){function e(){(0,l.Z)(this,e)}return(0,s.Z)(e,[{key:"intercept",value:function(e,t){return t.handle(e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=u.Yz7({token:e,factory:e.\u0275fac}),e}(),F=/^\)\]\}',?\n/,B=function(){var e=function(){function e(t){(0,l.Z)(this,e),this.xhrFactory=t}return(0,s.Z)(e,[{key:"handle",value:function(e){var t=this;if("JSONP"===e.method)throw new Error("Attempted to construct Jsonp request without HttpClientJsonpModule installed.");return new h.y(function(n){var i=t.xhrFactory.build();if(i.open(e.method,e.urlWithParams),e.withCredentials&&(i.withCredentials=!0),e.headers.forEach(function(e,t){return i.setRequestHeader(e,t.join(","))}),e.headers.has("Accept")||i.setRequestHeader("Accept","application/json, text/plain, */*"),!e.headers.has("Content-Type")){var r=e.detectContentTypeHeader();null!==r&&i.setRequestHeader("Content-Type",r)}if(e.responseType){var o=e.responseType.toLowerCase();i.responseType="json"!==o?o:"text"}var a=e.serializeBody(),s=null,l=function(){if(null!==s)return s;var t=1223===i.status?204:i.status,n=i.statusText||"OK",r=new y(i.getAllResponseHeaders()),o=function(e){return"responseURL"in e&&e.responseURL?e.responseURL:/^X-Request-URL:/m.test(e.getAllResponseHeaders())?e.getResponseHeader("X-Request-URL"):null}(i)||e.url;return s=new E({headers:r,status:t,statusText:n,url:o})},c=function(){var t=l(),r=t.headers,o=t.status,a=t.statusText,s=t.url,c=null;204!==o&&(c=void 0===i.response?i.responseText:i.response),0===o&&(o=c?200:0);var u=o>=200&&o<300;if("json"===e.responseType&&"string"==typeof c){var d=c;c=c.replace(F,"");try{c=""!==c?JSON.parse(c):null}catch(h){c=d,u&&(u=!1,c={error:h,text:c})}}u?(n.next(new P({body:c,headers:r,status:o,statusText:a,url:s||void 0})),n.complete()):n.error(new I({error:c,headers:r,status:o,statusText:a,url:s||void 0}))},u=function(e){var t=l(),r=new I({error:e,status:i.status||0,statusText:i.statusText||"Unknown Error",url:t.url||void 0});n.error(r)},d=!1,h=function(t){d||(n.next(l()),d=!0);var r={type:M.DownloadProgress,loaded:t.loaded};t.lengthComputable&&(r.total=t.total),"text"===e.responseType&&i.responseText&&(r.partialText=i.responseText),n.next(r)},p=function(e){var t={type:M.UploadProgress,loaded:e.loaded};e.lengthComputable&&(t.total=e.total),n.next(t)};return i.addEventListener("load",c),i.addEventListener("error",u),i.addEventListener("timeout",u),i.addEventListener("abort",u),e.reportProgress&&(i.addEventListener("progress",h),null!==a&&i.upload&&i.upload.addEventListener("progress",p)),i.send(a),n.next({type:M.Sent}),function(){i.removeEventListener("error",u),i.removeEventListener("abort",u),i.removeEventListener("load",c),i.removeEventListener("timeout",u),e.reportProgress&&(i.removeEventListener("progress",h),null!==a&&i.upload&&i.upload.removeEventListener("progress",p)),i.readyState!==i.DONE&&i.abort()}})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(u.LFG(c.JF))},e.\u0275prov=u.Yz7({token:e,factory:e.\u0275fac}),e}(),j=new u.OlP("XSRF_COOKIE_NAME"),z=new u.OlP("XSRF_HEADER_NAME"),U=function e(){(0,l.Z)(this,e)},H=function(){var e=function(){function e(t,n,i){(0,l.Z)(this,e),this.doc=t,this.platform=n,this.cookieName=i,this.lastCookieString="",this.lastToken=null,this.parseCount=0}return(0,s.Z)(e,[{key:"getToken",value:function(){if("server"===this.platform)return null;var e=this.doc.cookie||"";return e!==this.lastCookieString&&(this.parseCount++,this.lastToken=(0,c.Mx)(e,this.cookieName),this.lastCookieString=e),this.lastToken}}]),e}();return e.\u0275fac=function(t){return new(t||e)(u.LFG(c.K0),u.LFG(u.Lbi),u.LFG(j))},e.\u0275prov=u.Yz7({token:e,factory:e.\u0275fac}),e}(),Y=function(){var e=function(){function e(t,n){(0,l.Z)(this,e),this.tokenService=t,this.headerName=n}return(0,s.Z)(e,[{key:"intercept",value:function(e,t){var n=e.url.toLowerCase();if("GET"===e.method||"HEAD"===e.method||n.startsWith("http://")||n.startsWith("https://"))return t.handle(e);var i=this.tokenService.getToken();return null===i||e.headers.has(this.headerName)||(e=e.clone({headers:e.headers.set(this.headerName,i)})),t.handle(e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(u.LFG(U),u.LFG(z))},e.\u0275prov=u.Yz7({token:e,factory:e.\u0275fac}),e}(),J=function(){var e=function(){function e(t,n){(0,l.Z)(this,e),this.backend=t,this.injector=n,this.chain=null}return(0,s.Z)(e,[{key:"handle",value:function(e){if(null===this.chain){var t=this.injector.get(R,[]);this.chain=t.reduceRight(function(e,t){return new D(e,t)},this.backend)}return this.chain.handle(e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(u.LFG(v),u.LFG(u.zs3))},e.\u0275prov=u.Yz7({token:e,factory:e.\u0275fac}),e}(),G=function(){var e=function(){function e(){(0,l.Z)(this,e)}return(0,s.Z)(e,null,[{key:"disable",value:function(){return{ngModule:e,providers:[{provide:Y,useClass:L}]}}},{key:"withOptions",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{ngModule:e,providers:[t.cookieName?{provide:j,useValue:t.cookieName}:[],t.headerName?{provide:z,useValue:t.headerName}:[]]}}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=u.oAB({type:e}),e.\u0275inj=u.cJS({providers:[Y,{provide:R,useExisting:Y,multi:!0},{provide:U,useClass:H},{provide:j,useValue:"XSRF-TOKEN"},{provide:z,useValue:"X-XSRF-TOKEN"}]}),e}(),W=function(){var e=function e(){(0,l.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=u.oAB({type:e}),e.\u0275inj=u.cJS({providers:[N,{provide:g,useClass:J},B,{provide:v,useExisting:B}],imports:[[G.withOptions({cookieName:"XSRF-TOKEN",headerName:"X-XSRF-TOKEN"})]]}),e}()},37602:function(e,t,n){"use strict";n.d(t,{deG:function(){return kn},tb:function(){return Rc},AFp:function(){return Pc},ip1:function(){return Oc},CZH:function(){return Ec},hGG:function(){return Iu},z2F:function(){return Su},sBO:function(){return Al},Sil:function(){return Wc},_Vd:function(){return Xs},EJc:function(){return Bc},SBq:function(){return tl},a5r:function(){return Mu},qLn:function(){return Ji},vpe:function(){return uc},gxx:function(){return Fo},tBr:function(){return Vn},XFs:function(){return H},OlP:function(){return Cn},zs3:function(){return ta},ZZ4:function(){return bl},aQg:function(){return Sl},soG:function(){return Fc},YKP:function(){return Dl},v3s:function(){return Cu},h0i:function(){return Nl},PXZ:function(){return mu},R0b:function(){return Xc},FiY:function(){return Qn},Lbi:function(){return Dc},g9A:function(){return Nc},n_E:function(){return hc},Qsj:function(){return rl},FYo:function(){return il},JOm:function(){return Xi},Tiy:function(){return al},q3G:function(){return Ri},tp0:function(){return Xn},EAV:function(){return Au},Rgc:function(){return Pl},dDg:function(){return ru},DyG:function(){return Tn},GfV:function(){return sl},s_b:function(){return Ll},ifc:function(){return Q},eFA:function(){return vu},Ez6:function(){return q},G48:function(){return hu},Gpc:function(){return T},f3M:function(){return Un},X6Q:function(){return du},_c5:function(){return Eu},VLi:function(){return au},c2e:function(){return Lc},zSh:function(){return jo},wAp:function(){return Ds},vHH:function(){return M},EiD:function(){return Ni},mCW:function(){return yi},qzn:function(){return si},JVY:function(){return ci},pB0:function(){return pi},eBb:function(){return di},L6k:function(){return ui},LAX:function(){return hi},cg1:function(){return Is},Tjo:function(){return Ou},kL8:function(){return qs},yhl:function(){return li},dqk:function(){return te},sIi:function(){return da},CqO:function(){return Na},QGY:function(){return Ia},F4k:function(){return qa},RDi:function(){return je},AaK:function(){return x},z3N:function(){return ai},qOj:function(){return ia},TTD:function(){return qe},_Bn:function(){return Gs},xp6:function(){return Br},uIk:function(){return ga},Q2q:function(){return _a},zWS:function(){return ba},Tol:function(){return cs},Gre:function(){return As},ekj:function(){return as},Suo:function(){return Cc},Xpm:function(){return he},lG2:function(){return be},Yz7:function(){return I},cJS:function(){return N},oAB:function(){return ve},Yjl:function(){return we},Y36:function(){return xa},_UZ:function(){return Za},GkF:function(){return Ea},BQk:function(){return Oa},ynx:function(){return Ma},qZA:function(){return Aa},TgZ:function(){return Ta},EpF:function(){return Pa},n5z:function(){return _n},Ikx:function(){return Zs},LFG:function(){return zn},$8M:function(){return wn},NdJ:function(){return Da},CRH:function(){return kc},kcU:function(){return Nt},O4$:function(){return qt},oxw:function(){return ja},ALo:function(){return rc},lcZ:function(){return oc},xi3:function(){return ac},Hsn:function(){return Ha},F$t:function(){return Ua},Q6J:function(){return Ca},s9C:function(){return Ya},MGl:function(){return Ja},hYB:function(){return Ga},DdM:function(){return Kl},VKq:function(){return $l},WLB:function(){return ec},iGM:function(){return Sc},MAs:function(){return Sa},evT:function(){return Vi},Jf7:function(){return Wi},CHM:function(){return at},oJD:function(){return Li},Ckj:function(){return Fi},LSH:function(){return Bi},B6R:function(){return pe},kYT:function(){return ye},Akn:function(){return ss},Udp:function(){return os},WFA:function(){return Ra},d8E:function(){return Ms},YNc:function(){return wa},W1O:function(){return Mc},_uU:function(){return Ss},Oqu:function(){return xs},hij:function(){return Cs},AsE:function(){return ks},lnq:function(){return Ts},Gf:function(){return xc}});var i=n(51751),r=n(12558),o=n(3574),a=n(10270),s=(n(91035),n(76262),n(20454)),l=n(25801),c=n(44829),u=n(11254),d=n(61680),h=n(49843),p=n(37859),f=n(84937);function m(e){var t="function"==typeof Map?new Map:void 0;return(m=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return(0,c.Z)(e,arguments,(0,r.Z)(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),(0,f.Z)(n,e)})(e)}var g=n(5051),v=n(68707),y=n(89797),_=n(55371),b=n(16338);function w(e){for(var t in e)if(e[t]===w)return t;throw Error("Could not find renamed property on target object.")}function S(e,t){for(var n in t)t.hasOwnProperty(n)&&!e.hasOwnProperty(n)&&(e[n]=t[n])}function x(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(x).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return"".concat(e.overriddenName);if(e.name)return"".concat(e.name);var t=e.toString();if(null==t)return""+t;var n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function C(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}var k=w({__forward_ref__:w});function T(e){return e.__forward_ref__=T,e.toString=function(){return x(this())},e}function A(e){return Z(e)?e():e}function Z(e){return"function"==typeof e&&e.hasOwnProperty(k)&&e.__forward_ref__===T}var M=function(e){(0,h.Z)(n,e);var t=(0,p.Z)(n);function n(e,i){var r;return(0,d.Z)(this,n),(r=t.call(this,function(e,t){var n=e?"NG0".concat(e,": "):"";return"".concat(n).concat(t)}(e,i))).code=e,r}return n}(m(Error));function O(e){return"string"==typeof e?e:null==e?"":String(e)}function E(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():O(e)}function P(e,t){var n=t?" in ".concat(t):"";throw new M("201","No provider for ".concat(E(e)," found").concat(n))}function I(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}var q=I;function N(e){return{providers:e.providers||[],imports:e.imports||[]}}function D(e){return R(e,B)||R(e,z)}function R(e,t){return e.hasOwnProperty(t)?e[t]:null}function L(e){return e&&(e.hasOwnProperty(j)||e.hasOwnProperty(U))?e[j]:null}var F,B=w({"\u0275prov":w}),j=w({"\u0275inj":w}),z=w({ngInjectableDef:w}),U=w({ngInjectorDef:w}),H=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function Y(){return F}function J(e){var t=F;return F=e,t}function G(e,t,n){var i=D(e);return i&&"root"==i.providedIn?void 0===i.value?i.value=i.factory():i.value:n&H.Optional?null:void 0!==t?t:void P(x(e),"Injector")}function W(e){return{toString:e}.toString()}var V=function(e){return e[e.OnPush=0]="OnPush",e[e.Default=1]="Default",e}({}),Q=function(e){return e[e.Emulated=0]="Emulated",e[e.None=2]="None",e[e.ShadowDom=3]="ShadowDom",e}({}),X="undefined"!=typeof globalThis&&globalThis,K="undefined"!=typeof window&&window,$="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,ee="undefined"!=typeof global&&global,te=X||ee||K||$,ne={},ie=[],re=w({"\u0275cmp":w}),oe=w({"\u0275dir":w}),ae=w({"\u0275pipe":w}),se=w({"\u0275mod":w}),le=w({"\u0275loc":w}),ce=w({"\u0275fac":w}),ue=w({__NG_ELEMENT_ID__:w}),de=0;function he(e){return W(function(){var t={},n={type:e.type,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:t,inputs:null,outputs:null,exportAs:e.exportAs||null,onPush:e.changeDetection===V.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||ie,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||Q.Emulated,id:"c",styles:e.styles||ie,_:null,setInput:null,schemas:e.schemas||null,tView:null},i=e.directives,r=e.features,o=e.pipes;return n.id+=de++,n.inputs=_e(e.inputs,t),n.outputs=_e(e.outputs),r&&r.forEach(function(e){return e(n)}),n.directiveDefs=i?function(){return("function"==typeof i?i():i).map(fe)}:null,n.pipeDefs=o?function(){return("function"==typeof o?o():o).map(me)}:null,n})}function pe(e,t,n){var i=e.\u0275cmp;i.directiveDefs=function(){return t.map(fe)},i.pipeDefs=function(){return n.map(me)}}function fe(e){return Se(e)||function(e){return e[oe]||null}(e)}function me(e){return function(e){return e[ae]||null}(e)}var ge={};function ve(e){return W(function(){var t={type:e.type,bootstrap:e.bootstrap||ie,declarations:e.declarations||ie,imports:e.imports||ie,exports:e.exports||ie,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&(ge[e.id]=e.type),t})}function ye(e,t){return W(function(){var n=xe(e,!0);n.declarations=t.declarations||ie,n.imports=t.imports||ie,n.exports=t.exports||ie})}function _e(e,t){if(null==e)return ne;var n={};for(var i in e)if(e.hasOwnProperty(i)){var r=e[i],o=r;Array.isArray(r)&&(o=r[1],r=r[0]),n[r]=i,t&&(t[r]=o)}return n}var be=he;function we(e){return{type:e.type,name:e.name,factory:null,pure:!1!==e.pure,onDestroy:e.type.prototype.ngOnDestroy||null}}function Se(e){return e[re]||null}function xe(e,t){var n=e[se]||null;if(!n&&!0===t)throw new Error("Type ".concat(x(e)," does not have '\u0275mod' property."));return n}var Ce=20,ke=10;function Te(e){return Array.isArray(e)&&"object"==typeof e[1]}function Ae(e){return Array.isArray(e)&&!0===e[1]}function Ze(e){return 0!=(8&e.flags)}function Me(e){return 2==(2&e.flags)}function Oe(e){return 1==(1&e.flags)}function Ee(e){return null!==e.template}function Pe(e,t){return e.hasOwnProperty(ce)?e[ce]:null}var Ie=function(){function e(t,n,i){(0,d.Z)(this,e),this.previousValue=t,this.currentValue=n,this.firstChange=i}return(0,u.Z)(e,[{key:"isFirstChange",value:function(){return this.firstChange}}]),e}();function qe(){return Ne}function Ne(e){return e.type.prototype.ngOnChanges&&(e.setInput=Re),De}function De(){var e=Le(this),t=null==e?void 0:e.current;if(t){var n=e.previous;if(n===ne)e.previous=t;else for(var i in t)n[i]=t[i];e.current=null,this.ngOnChanges(t)}}function Re(e,t,n,i){var r=Le(e)||function(e,t){return e.__ngSimpleChanges__=t}(e,{previous:ne,current:null}),o=r.current||(r.current={}),a=r.previous,s=this.declaredInputs[n],l=a[s];o[s]=new Ie(l&&l.currentValue,t,a===ne),e[i]=t}function Le(e){return e.__ngSimpleChanges__||null}qe.ngInherit=!0;var Fe="http://www.w3.org/2000/svg",Be=void 0;function je(e){Be=e}function ze(){return void 0!==Be?Be:"undefined"!=typeof document?document:void 0}function Ue(e){return!!e.listen}var He={createRenderer:function(e,t){return ze()}};function Ye(e){for(;Array.isArray(e);)e=e[0];return e}function Je(e,t){return Ye(t[e])}function Ge(e,t){return Ye(t[e.index])}function We(e,t){return e.data[t]}function Ve(e,t){return e[t]}function Qe(e,t){var n=t[e];return Te(n)?n:n[0]}function Xe(e){return 4==(4&e[2])}function Ke(e){return 128==(128&e[2])}function $e(e,t){return null==t?null:e[t]}function et(e){e[18]=0}function tt(e,t){e[5]+=t;for(var n=e,i=e[3];null!==i&&(1===t&&1===n[5]||-1===t&&0===n[5]);)i[5]+=t,n=i,i=i[3]}var nt={lFrame:Tt(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function it(){return nt.bindingsEnabled}function rt(){return nt.lFrame.lView}function ot(){return nt.lFrame.tView}function at(e){return nt.lFrame.contextLView=e,e[8]}function st(){for(var e=lt();null!==e&&64===e.type;)e=e.parent;return e}function lt(){return nt.lFrame.currentTNode}function ct(e,t){var n=nt.lFrame;n.currentTNode=e,n.isParent=t}function ut(){return nt.lFrame.isParent}function dt(){nt.lFrame.isParent=!1}function ht(){return nt.isInCheckNoChangesMode}function pt(e){nt.isInCheckNoChangesMode=e}function ft(){var e=nt.lFrame,t=e.bindingRootIndex;return-1===t&&(t=e.bindingRootIndex=e.tView.bindingStartIndex),t}function mt(){return nt.lFrame.bindingIndex}function gt(){return nt.lFrame.bindingIndex++}function vt(e){var t=nt.lFrame,n=t.bindingIndex;return t.bindingIndex=t.bindingIndex+e,n}function yt(e){nt.lFrame.currentDirectiveIndex=e}function _t(e){var t=nt.lFrame.currentDirectiveIndex;return-1===t?null:e[t]}function bt(){return nt.lFrame.currentQueryIndex}function wt(e){nt.lFrame.currentQueryIndex=e}function St(e){var t=e[1];return 2===t.type?t.declTNode:1===t.type?e[6]:null}function xt(e,t,n){if(n&H.SkipSelf){for(var i=t,r=e;!(null!==(i=i.parent)||n&H.Host||null===(i=St(r))||(r=r[15],10&i.type)););if(null===i)return!1;t=i,e=r}var o=nt.lFrame=kt();return o.currentTNode=t,o.lView=e,!0}function Ct(e){var t=kt(),n=e[1];nt.lFrame=t,t.currentTNode=n.firstChild,t.lView=e,t.tView=n,t.contextLView=e,t.bindingIndex=n.bindingStartIndex,t.inI18n=!1}function kt(){var e=nt.lFrame,t=null===e?null:e.child;return null===t?Tt(e):t}function Tt(e){var t={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:e,child:null,inI18n:!1};return null!==e&&(e.child=t),t}function At(){var e=nt.lFrame;return nt.lFrame=e.parent,e.currentTNode=null,e.lView=null,e}var Zt=At;function Mt(){var e=At();e.isParent=!0,e.tView=null,e.selectedIndex=-1,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Ot(e){return(nt.lFrame.contextLView=function(e,t){for(;e>0;)t=t[15],e--;return t}(e,nt.lFrame.contextLView))[8]}function Et(){return nt.lFrame.selectedIndex}function Pt(e){nt.lFrame.selectedIndex=e}function It(){var e=nt.lFrame;return We(e.tView,e.selectedIndex)}function qt(){nt.lFrame.currentNamespace=Fe}function Nt(){nt.lFrame.currentNamespace=null}function Dt(e,t){for(var n=t.directiveStart,i=t.directiveEnd;n=i)break}else t[s]<0&&(e[18]+=65536),(a>11>16&&(3&e[2])===t){e[2]+=2048;try{o.call(a)}finally{}}}else try{o.call(a)}finally{}}var zt=-1,Ut=function e(t,n,i){(0,d.Z)(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=i};function Ht(e,t,n){for(var i=Ue(e),r=0;rt){a=o-1;break}}}for(;o>16,i=t;n>0;)i=i[15],n--;return i}var Kt=!0;function $t(e){var t=Kt;return Kt=e,t}var en=0;function tn(e,t){var n=rn(e,t);if(-1!==n)return n;var i=t[1];i.firstCreatePass&&(e.injectorIndex=t.length,nn(i.data,e),nn(t,null),nn(i.blueprint,null));var r=on(e,t),o=e.injectorIndex;if(Vt(r))for(var a=Qt(r),s=Xt(r,t),l=s[1].data,c=0;c<8;c++)t[o+c]=s[a+c]|l[a+c];return t[o+8]=r,o}function nn(e,t){e.push(0,0,0,0,0,0,0,0,t)}function rn(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null===t[e.injectorIndex+8]?-1:e.injectorIndex}function on(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=0,i=null,r=t;null!==r;){var o=r[1],a=o.type;if(null===(i=2===a?o.declTNode:1===a?r[6]:null))return zt;if(n++,r=r[15],-1!==i.injectorIndex)return i.injectorIndex|n<<16}return zt}function an(e,t,n){!function(e,t,n){var i;"string"==typeof n?i=n.charCodeAt(0)||0:n.hasOwnProperty(ue)&&(i=n[ue]),null==i&&(i=n[ue]=en++);var r=255&i;t.data[e+(r>>5)]|=1<3&&void 0!==arguments[3]?arguments[3]:H.Default,r=arguments.length>4?arguments[4]:void 0;if(null!==e){var o=mn(n);if("function"==typeof o){if(!xt(t,e,i))return i&H.Host?sn(r,n,i):ln(t,n,i,r);try{var a=o(i);if(null!=a||i&H.Optional)return a;P(n)}finally{Zt()}}else if("number"==typeof o){var s=null,l=rn(e,t),c=zt,u=i&H.Host?t[16][6]:null;for((-1===l||i&H.SkipSelf)&&((c=-1===l?on(e,t):t[l+8])!==zt&&vn(i,!1)?(s=t[1],l=Qt(c),t=Xt(c,t)):l=-1);-1!==l;){var d=t[1];if(gn(o,l,d.data)){var h=hn(l,t,n,s,i,u);if(h!==un)return h}(c=t[l+8])!==zt&&vn(i,t[1].data[l+8]===u)&&gn(o,l,t)?(s=d,l=Qt(c),t=Xt(c,t)):l=-1}}}return ln(t,n,i,r)}var un={};function dn(){return new yn(st(),rt())}function hn(e,t,n,i,r,o){var a=t[1],s=a.data[e+8],l=pn(s,a,n,null==i?Me(s)&&Kt:i!=a&&0!=(3&s.type),r&H.Host&&o===s);return null!==l?fn(t,a,l,s):un}function pn(e,t,n,i,r){for(var o=e.providerIndexes,a=t.data,s=1048575&o,l=e.directiveStart,c=o>>20,u=r?s+c:e.directiveEnd,d=i?s:s+c;d=l&&h.type===n)return d}if(r){var p=a[l];if(p&&Ee(p)&&p.type===n)return l}return null}function fn(e,t,n,i){var r=e[n],o=t.data;if(r instanceof Ut){var a=r;a.resolving&&function(e,t){throw new M("200","Circular dependency in DI detected for ".concat(e).concat(""))}(E(o[n]));var s=$t(a.canSeeViewProviders);a.resolving=!0;var l=a.injectImpl?J(a.injectImpl):null;xt(e,i,H.Default);try{r=e[n]=a.factory(void 0,o,e,i),t.firstCreatePass&&n>=i.directiveStart&&function(e,t,n){var i=t.type.prototype,r=i.ngOnInit,o=i.ngDoCheck;if(i.ngOnChanges){var a=Ne(t);(n.preOrderHooks||(n.preOrderHooks=[])).push(e,a),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,a)}r&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-e,r),o&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,o),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,o))}(n,o[n],t)}finally{null!==l&&J(l),$t(s),a.resolving=!1,Zt()}}return r}function mn(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e.hasOwnProperty(ue)?e[ue]:void 0;return"number"==typeof t?t>=0?255&t:dn:t}function gn(e,t,n){return!!(n[t+(e>>5)]&1<=e.length?e.push(n):e.splice(t,0,n)}function On(e,t){return t>=e.length-1?e.pop():e.splice(t,1)[0]}function En(e,t){for(var n=[],i=0;i=0?e[1|i]=n:function(e,t,n,i){var r=e.length;if(r==t)e.push(n,i);else if(1===r)e.push(i,e[0]),e[0]=n;else{for(r--,e.push(e[r-1],e[r]);r>t;)e[r]=e[r-2],r--;e[t]=n,e[t+1]=i}}(e,i=~i,t,n),i}function In(e,t){var n=qn(e,t);if(n>=0)return e[1|n]}function qn(e,t){return function(e,t,n){for(var i=0,r=e.length>>1;r!==i;){var o=i+(r-i>>1),a=e[o<<1];if(t===a)return o<<1;a>t?r=o:i=o+1}return~(r<<1)}(e,t)}var Nn={},Dn=/\n/gm,Rn="__source",Ln=w({provide:String,useValue:w}),Fn=void 0;function Bn(e){var t=Fn;return Fn=e,t}function jn(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:H.Default;if(void 0===Fn)throw new Error("inject() must be called from an injection context");return null===Fn?G(e,void 0,t):Fn.get(e,t&H.Optional?null:void 0,t)}function zn(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:H.Default;return(Y()||jn)(A(e),t)}var Un=zn;function Hn(e){for(var t=[],n=0;n3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var r=x(t);if(Array.isArray(t))r=t.map(x).join(" -> ");else if("object"==typeof t){var o=[];for(var a in t)if(t.hasOwnProperty(a)){var s=t[a];o.push(a+":"+("string"==typeof s?JSON.stringify(s):x(s)))}r="{".concat(o.join(", "),"}")}return"".concat(n).concat(i?"("+i+")":"","[").concat(r,"]: ").concat(e.replace(Dn,"\n "))}("\n"+e.message,r,n,i),e.ngTokenPath=r,e.ngTempTokenPath=null,e}var Gn,Wn,Vn=Yn(xn("Inject",function(e){return{token:e}}),-1),Qn=Yn(xn("Optional"),8),Xn=Yn(xn("SkipSelf"),4);function Kn(e){var t;return(null===(t=function(){if(void 0===Gn&&(Gn=null,te.trustedTypes))try{Gn=te.trustedTypes.createPolicy("angular",{createHTML:function(e){return e},createScript:function(e){return e},createScriptURL:function(e){return e}})}catch(t){}return Gn}())||void 0===t?void 0:t.createHTML(e))||e}function $n(e){var t;return(null===(t=function(){if(void 0===Wn&&(Wn=null,te.trustedTypes))try{Wn=te.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:function(e){return e},createScript:function(e){return e},createScriptURL:function(e){return e}})}catch(t){}return Wn}())||void 0===t?void 0:t.createHTML(e))||e}var ei=function(){function e(t){(0,d.Z)(this,e),this.changingThisBreaksApplicationSecurity=t}return(0,u.Z)(e,[{key:"toString",value:function(){return"SafeValue must use [property]=binding: ".concat(this.changingThisBreaksApplicationSecurity)+" (see https://g.co/ng/security#xss)"}}]),e}(),ti=function(e){(0,h.Z)(n,e);var t=(0,p.Z)(n);function n(){return(0,d.Z)(this,n),t.apply(this,arguments)}return(0,u.Z)(n,[{key:"getTypeName",value:function(){return"HTML"}}]),n}(ei),ni=function(e){(0,h.Z)(n,e);var t=(0,p.Z)(n);function n(){return(0,d.Z)(this,n),t.apply(this,arguments)}return(0,u.Z)(n,[{key:"getTypeName",value:function(){return"Style"}}]),n}(ei),ii=function(e){(0,h.Z)(n,e);var t=(0,p.Z)(n);function n(){return(0,d.Z)(this,n),t.apply(this,arguments)}return(0,u.Z)(n,[{key:"getTypeName",value:function(){return"Script"}}]),n}(ei),ri=function(e){(0,h.Z)(n,e);var t=(0,p.Z)(n);function n(){return(0,d.Z)(this,n),t.apply(this,arguments)}return(0,u.Z)(n,[{key:"getTypeName",value:function(){return"URL"}}]),n}(ei),oi=function(e){(0,h.Z)(n,e);var t=(0,p.Z)(n);function n(){return(0,d.Z)(this,n),t.apply(this,arguments)}return(0,u.Z)(n,[{key:"getTypeName",value:function(){return"ResourceURL"}}]),n}(ei);function ai(e){return e instanceof ei?e.changingThisBreaksApplicationSecurity:e}function si(e,t){var n=li(e);if(null!=n&&n!==t){if("ResourceURL"===n&&"URL"===t)return!0;throw new Error("Required a safe ".concat(t,", got a ").concat(n," (see https://g.co/ng/security#xss)"))}return n===t}function li(e){return e instanceof ei&&e.getTypeName()||null}function ci(e){return new ti(e)}function ui(e){return new ni(e)}function di(e){return new ii(e)}function hi(e){return new ri(e)}function pi(e){return new oi(e)}var fi=function(){function e(t){(0,d.Z)(this,e),this.inertDocumentHelper=t}return(0,u.Z)(e,[{key:"getInertBodyElement",value:function(e){e=""+e;try{var t=(new window.DOMParser).parseFromString(Kn(e),"text/html").body;return null===t?this.inertDocumentHelper.getInertBodyElement(e):(t.removeChild(t.firstChild),t)}catch(n){return null}}}]),e}(),mi=function(){function e(t){if((0,d.Z)(this,e),this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),null==this.inertDocument.body){var n=this.inertDocument.createElement("html");this.inertDocument.appendChild(n);var i=this.inertDocument.createElement("body");n.appendChild(i)}}return(0,u.Z)(e,[{key:"getInertBodyElement",value:function(e){var t=this.inertDocument.createElement("template");if("content"in t)return t.innerHTML=Kn(e),t;var n=this.inertDocument.createElement("body");return n.innerHTML=Kn(e),this.defaultDoc.documentMode&&this.stripCustomNsAttrs(n),n}},{key:"stripCustomNsAttrs",value:function(e){for(var t=e.attributes,n=t.length-1;0"),!0}},{key:"endElement",value:function(e){var t=e.nodeName.toLowerCase();Ti.hasOwnProperty(t)&&!Si.hasOwnProperty(t)&&(this.buf.push(""))}},{key:"chars",value:function(e){this.buf.push(qi(e))}},{key:"checkClobberedElement",value:function(e,t){if(t&&(e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error("Failed to sanitize html because the element is clobbered: ".concat(e.outerHTML));return t}}]),e}(),Pi=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Ii=/([^\#-~ |!])/g;function qi(e){return e.replace(/&/g,"&").replace(Pi,function(e){return"&#"+(1024*(e.charCodeAt(0)-55296)+(e.charCodeAt(1)-56320)+65536)+";"}).replace(Ii,function(e){return"&#"+e.charCodeAt(0)+";"}).replace(//g,">")}function Ni(e,t){var n=null;try{wi=wi||function(e){var t=new mi(e);return function(){try{return!!(new window.DOMParser).parseFromString(Kn(""),"text/html")}catch(e){return!1}}()?new fi(t):t}(e);var i=t?String(t):"";n=wi.getInertBodyElement(i);var r=5,o=i;do{if(0===r)throw new Error("Failed to sanitize html because the input is unstable");r--,i=o,o=n.innerHTML,n=wi.getInertBodyElement(i)}while(i!==o);return Kn((new Ei).sanitizeChildren(Di(n)||n))}finally{if(n)for(var a=Di(n)||n;a.firstChild;)a.removeChild(a.firstChild)}}function Di(e){return"content"in e&&function(e){return e.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===e.nodeName}(e)?e.content:null}var Ri=function(e){return e[e.NONE=0]="NONE",e[e.HTML=1]="HTML",e[e.STYLE=2]="STYLE",e[e.SCRIPT=3]="SCRIPT",e[e.URL=4]="URL",e[e.RESOURCE_URL=5]="RESOURCE_URL",e}({});function Li(e){var t=ji();return t?$n(t.sanitize(Ri.HTML,e)||""):si(e,"HTML")?$n(ai(e)):Ni(ze(),O(e))}function Fi(e){var t=ji();return t?t.sanitize(Ri.STYLE,e)||"":si(e,"Style")?ai(e):O(e)}function Bi(e){var t=ji();return t?t.sanitize(Ri.URL,e)||"":si(e,"URL")?ai(e):yi(O(e))}function ji(){var e=rt();return e&&e[12]}function zi(e,t){e.__ngContext__=t}function Ui(e){var t=function(e){return e.__ngContext__||null}(e);return t?Array.isArray(t)?t:t.lView:null}function Hi(e){return e.ngOriginalError}function Yi(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i0&&(e[i-1][4]=r[4]);var a=On(e,ke+t);Sr(r[1],n=r,n[11],2,null,null),n[0]=null,n[6]=null;var s=a[19];null!==s&&s.detachView(a[1]),r[3]=null,r[4]=null,r[2]&=-129}return r}}function lr(e,t){if(!(256&t[2])){var n=t[11];Ue(n)&&n.destroyNode&&Sr(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return cr(e[1],e);for(;t;){var n=null;if(Te(t))n=t[13];else{var i=t[10];i&&(n=i)}if(!n){for(;t&&!t[4]&&t!==e;)Te(t)&&cr(t[1],t),t=t[3];null===t&&(t=e),Te(t)&&cr(t[1],t),n=t&&t[4]}t=n}}(t)}}function cr(e,t){if(!(256&t[2])){t[2]&=-129,t[2]|=256,function(e,t){var n;if(null!=e&&null!=(n=e.destroyHooks))for(var i=0;i=0?i[r=c]():i[r=-c].unsubscribe(),o+=2}else{var u=i[r=n[o+1]];n[o].call(u)}if(null!==i){for(var d=r+1;do?"":r[u+1].toLowerCase();var h=8&i?d:null;if(h&&-1!==Ar(h,c,0)||2&i&&c!==d){if(Ir(i))return!1;a=!0}}}}else{if(!a&&!Ir(i)&&!Ir(l))return!1;if(a&&Ir(l))continue;a=!1,i=l|1&i}}return Ir(i)||a}function Ir(e){return 0==(1&e)}function qr(e,t,n,i){if(null===t)return-1;var r=0;if(i||!n){for(var o=!1;r-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],i=0;i0?'="'+s+'"':"")+"]"}else 8&i?r+="."+a:4&i&&(r+=" "+a);else""===r||Ir(a)||(t+=Rr(o,r),r=""),i=a,o=o||!Ir(i);n++}return""!==r&&(t+=Rr(o,r)),t}var Fr={};function Br(e){jr(ot(),rt(),Et()+e,ht())}function jr(e,t,n,i){if(!i)if(3==(3&t[2])){var r=e.preOrderCheckHooks;null!==r&&Rt(t,r,n)}else{var o=e.preOrderHooks;null!==o&&Lt(t,o,0,n)}Pt(n)}function zr(e,t){return e<<17|t<<2}function Ur(e){return e>>17&32767}function Hr(e){return 2|e}function Yr(e){return(131068&e)>>2}function Jr(e,t){return-131069&e|t<<2}function Gr(e){return 1|e}function Wr(e,t){var n=e.contentQueries;if(null!==n)for(var i=0;iCe&&jr(e,t,Ce,ht()),n(i,r)}finally{Pt(o)}}function no(e,t,n){if(Ze(t))for(var i=t.directiveEnd,r=t.directiveStart;r2&&void 0!==arguments[2]?arguments[2]:Ge,i=t.localNames;if(null!==i)for(var r=t.index+1,o=0;o0;){var n=e[--t];if("number"==typeof n&&n<0)return n}return 0})(s)!=l&&s.push(l),s.push(i,r,a)}}function po(e,t){null!==e.hostBindings&&e.hostBindings(1,t)}function fo(e,t){t.flags|=2,(e.components||(e.components=[])).push(t.index)}function mo(e,t,n){if(n){if(t.exportAs)for(var i=0;i0&&Co(n)}}function Co(e){for(var t=er(e);null!==t;t=tr(t))for(var n=ke;n0&&Co(i)}var o=e[1].components;if(null!==o)for(var a=0;a0&&Co(s)}}function ko(e,t){var n=Qe(t,e),i=n[1];!function(e,t){for(var n=t.length;n1&&void 0!==arguments[1]?arguments[1]:Nn;if(t===Nn){var n=new Error("NullInjectorError: No provider for ".concat(x(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),jo=new Cn("Set Injector scope."),zo={},Uo={},Ho=void 0;function Yo(){return void 0===Ho&&(Ho=new Bo),Ho}function Jo(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,i=arguments.length>3?arguments[3]:void 0;return new Go(e,n,t||Yo(),i)}var Go=function(){function e(t,n,i){var r=this,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;(0,d.Z)(this,e),this.parent=i,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var a=[];n&&Zn(n,function(e){return r.processProvider(e,t,n)}),Zn([t],function(e){return r.processInjectorType(e,[],a)}),this.records.set(Fo,Qo(void 0,this));var s=this.records.get(jo);this.scope=null!=s?s.value:null,this.source=o||("object"==typeof t?null:x(t))}return(0,u.Z)(e,[{key:"destroyed",get:function(){return this._destroyed}},{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(function(e){return e.ngOnDestroy()})}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Nn,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:H.Default;this.assertNotDestroyed();var i=Bn(this),r=J(void 0);try{if(!(n&H.SkipSelf)){var o=this.records.get(e);if(void 0===o){var a=$o(e)&&D(e);o=a&&this.injectableDefInScope(a)?Qo(Wo(e),zo):null,this.records.set(e,o)}if(null!=o)return this.hydrate(e,o)}var s=n&H.Self?Yo():this.parent;return s.get(e,t=n&H.Optional&&t===Nn?null:t)}catch(c){if("NullInjectorError"===c.name){var l=c.ngTempTokenPath=c.ngTempTokenPath||[];if(l.unshift(x(e)),i)throw c;return Jn(c,e,"R3InjectorError",this.source)}throw c}finally{J(r),Bn(i)}}},{key:"_resolveInjectorDefTypes",value:function(){var e=this;this.injectorDefTypes.forEach(function(t){return e.get(t)})}},{key:"toString",value:function(){var e=[];return this.records.forEach(function(t,n){return e.push(x(n))}),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var i=this;if(!(e=A(e)))return!1;var r=L(e),o=null==r&&e.ngModule||void 0,a=void 0===o?e:o,s=-1!==n.indexOf(a);if(void 0!==o&&(r=L(o)),null==r)return!1;if(null!=r.imports&&!s){var l;n.push(a);try{Zn(r.imports,function(e){i.processInjectorType(e,t,n)&&(void 0===l&&(l=[]),l.push(e))})}finally{}if(void 0!==l)for(var c=function(e){var t=l[e],n=t.ngModule,r=t.providers;Zn(r,function(e){return i.processProvider(e,n,r||ie)})},u=0;u0){var n=En(t,"?");throw new Error("Can't resolve all parameters for ".concat(x(e),": (").concat(n.join(", "),")."))}var i=function(e){var t=e&&(e[B]||e[z]);if(t){var n=function(e){if(e.hasOwnProperty("name"))return e.name;var t=(""+e).match(/^function\s*([^\s(]+)/);return null===t?"":t[1]}(e);return console.warn('DEPRECATED: DI is instantiating a token "'.concat(n,'" that inherits its @Injectable decorator but does not provide one itself.\n')+'This will become an error in a future version of Angular. Please add @Injectable() to the "'.concat(n,'" class.')),t}return null}(e);return null!==i?function(){return i.factory(e)}:function(){return new e}}(e);throw new Error("unreachable")}function Vo(e,t,n){var i,r=void 0;if(Ko(e)){var o=A(e);return Pe(o)||Wo(o)}if(Xo(e))r=function(){return A(e.useValue)};else if((i=e)&&i.useFactory)r=function(){return e.useFactory.apply(e,(0,l.Z)(Hn(e.deps||[])))};else if(function(e){return!(!e||!e.useExisting)}(e))r=function(){return zn(A(e.useExisting))};else{var a=A(e&&(e.useClass||e.provide));if(!function(e){return!!e.deps}(e))return Pe(a)||Wo(a);r=function(){return(0,c.Z)(a,(0,l.Z)(Hn(e.deps)))}}return r}function Qo(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function Xo(e){return null!==e&&"object"==typeof e&&Ln in e}function Ko(e){return"function"==typeof e}function $o(e){return"function"==typeof e||"object"==typeof e&&e instanceof Cn}var ea=function(e,t,n){return function(e){var t=Jo(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,arguments.length>3?arguments[3]:void 0);return t._resolveInjectorDefTypes(),t}({name:n},t,e,n)},ta=function(){var e=function(){function e(){(0,d.Z)(this,e)}return(0,u.Z)(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?ea(e,t,""):ea(e.providers,e.parent,e.name||"")}}]),e}();return e.THROW_IF_NOT_FOUND=Nn,e.NULL=new Bo,e.\u0275prov=I({token:e,providedIn:"any",factory:function(){return zn(Fo)}}),e.__NG_ELEMENT_ID__=-1,e}();function na(e,t){Dt(Ui(e)[1],st())}function ia(e){for(var t=Object.getPrototypeOf(e.type.prototype).constructor,n=!0,i=[e];t;){var r=void 0;if(Ee(e))r=t.\u0275cmp||t.\u0275dir;else{if(t.\u0275cmp)throw new Error("Directives cannot inherit Components");r=t.\u0275dir}if(r){if(n){i.push(r);var o=e;o.inputs=ra(e.inputs),o.declaredInputs=ra(e.declaredInputs),o.outputs=ra(e.outputs);var a=r.hostBindings;a&&sa(e,a);var s=r.viewQuery,l=r.contentQueries;if(s&&oa(e,s),l&&aa(e,l),S(e.inputs,r.inputs),S(e.declaredInputs,r.declaredInputs),S(e.outputs,r.outputs),Ee(r)&&r.data.animation){var c=e.data;c.animation=(c.animation||[]).concat(r.data.animation)}}var u=r.features;if(u)for(var d=0;d=0;i--){var r=e[i];r.hostVars=t+=r.hostVars,r.hostAttrs=Gt(r.hostAttrs,n=Gt(n,r.hostAttrs))}}(i)}function ra(e){return e===ne?{}:e===ie?[]:e}function oa(e,t){var n=e.viewQuery;e.viewQuery=n?function(e,i){t(e,i),n(e,i)}:t}function aa(e,t){var n=e.contentQueries;e.contentQueries=n?function(e,i,r){t(e,i,r),n(e,i,r)}:t}function sa(e,t){var n=e.hostBindings;e.hostBindings=n?function(e,i){t(e,i),n(e,i)}:t}var la=null;function ca(){if(!la){var e=te.Symbol;if(e&&e.iterator)la=e.iterator;else for(var t=Object.getOwnPropertyNames(Map.prototype),n=0;n1&&void 0!==arguments[1]?arguments[1]:H.Default,n=rt();if(null===n)return zn(e,t);var i=st();return cn(i,n,A(e),t)}function Ca(e,t,n){var i=rt();return fa(i,gt(),t)&&co(ot(),It(),i,e,t,i[11],n,!1),Ca}function ka(e,t,n,i,r){var o=r?"class":"style";Do(e,n,t.inputs[o],o,i)}function Ta(e,t,n,i){var r=rt(),o=ot(),a=Ce+e,s=r[11],l=r[a]=or(s,t,nt.lFrame.currentNamespace),c=o.firstCreatePass?function(e,t,n,i,r,o,a){var s=t.consts,l=Qr(t,e,2,r,$e(s,o));return uo(t,n,l,$e(s,a)),null!==l.attrs&&Lo(l,l.attrs,!1),null!==l.mergedAttrs&&Lo(l,l.mergedAttrs,!0),null!==t.queries&&t.queries.elementStart(t,l),l}(a,o,r,0,t,n,i):o.data[a];ct(c,!0);var u=c.mergedAttrs;null!==u&&Ht(s,l,u);var d=c.classes;null!==d&&Tr(s,l,d);var h=c.styles;null!==h&&kr(s,l,h),64!=(64&c.flags)&&vr(o,r,l,c),0===nt.lFrame.elementDepthCount&&zi(l,r),nt.lFrame.elementDepthCount++,Oe(c)&&(io(o,r,c),no(o,c,r)),null!==i&&ro(r,c)}function Aa(){var e=st();ut()?dt():ct(e=e.parent,!1);var t=e;nt.lFrame.elementDepthCount--;var n=ot();n.firstCreatePass&&(Dt(n,e),Ze(e)&&n.queries.elementEnd(e)),null!=t.classesWithoutHost&&function(e){return 0!=(16&e.flags)}(t)&&ka(n,t,rt(),t.classesWithoutHost,!0),null!=t.stylesWithoutHost&&function(e){return 0!=(32&e.flags)}(t)&&ka(n,t,rt(),t.stylesWithoutHost,!1)}function Za(e,t,n,i){Ta(e,t,n,i),Aa()}function Ma(e,t,n){var i=rt(),r=ot(),o=e+Ce,a=r.firstCreatePass?function(e,t,n,i,r){var o=t.consts,a=$e(o,i),s=Qr(t,e,8,"ng-container",a);return null!==a&&Lo(s,a,!0),uo(t,n,s,$e(o,r)),null!==t.queries&&t.queries.elementStart(t,s),s}(o,r,i,t,n):r.data[o];ct(a,!0);var s=i[o]=i[11].createComment("");vr(r,i,s,a),zi(s,i),Oe(a)&&(io(r,i,a),no(r,a,i)),null!=n&&ro(i,a)}function Oa(){var e=st(),t=ot();ut()?dt():ct(e=e.parent,!1),t.firstCreatePass&&(Dt(t,e),Ze(e)&&t.queries.elementEnd(e))}function Ea(e,t,n){Ma(e,t,n),Oa()}function Pa(){return rt()}function Ia(e){return!!e&&"function"==typeof e.then}function qa(e){return!!e&&"function"==typeof e.subscribe}var Na=qa;function Da(e,t,n,i){var r=rt(),o=ot(),a=st();return La(o,r,r[11],a,e,t,!!n,i),Da}function Ra(e,t){var n=st(),i=rt(),r=ot();return La(r,i,qo(_t(r.data),n,i),n,e,t,!1),Ra}function La(e,t,n,i,r,o,a,s){var l=Oe(i),c=e.firstCreatePass&&Io(e),u=Po(t),d=!0;if(3&i.type||s){var h=Ge(i,t),p=s?s(h):h,f=u.length,m=s?function(e){return s(Ye(e[i.index]))}:i.index;if(Ue(n)){var g=null;if(!s&&l&&(g=function(e,t,n,i){var r=e.cleanup;if(null!=r)for(var o=0;ol?s[l]:null}"string"==typeof a&&(o+=2)}return null}(e,t,r,i.index)),null!==g)(g.__ngLastListenerFn__||g).__ngNextListenerFn__=o,g.__ngLastListenerFn__=o,d=!1;else{o=Ba(i,t,0,o,!1);var v=n.listen(p,r,o);u.push(o,v),c&&c.push(r,m,f,f+1)}}else o=Ba(i,t,0,o,!0),p.addEventListener(r,o,a),u.push(o),c&&c.push(r,m,f,a)}else o=Ba(i,t,0,o,!1);var y,_=i.outputs;if(d&&null!==_&&(y=_[r])){var b=y.length;if(b)for(var w=0;w0&&void 0!==arguments[0]?arguments[0]:1;return Ot(e)}function za(e,t){for(var n=null,i=function(e){var t=e.attrs;if(null!=t){var n=t.indexOf(5);if(0==(1&n))return t[n+1]}return null}(e),r=0;r1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2?arguments[2]:void 0,i=rt(),r=ot(),o=Qr(r,Ce+e,16,null,n||null);null===o.projection&&(o.projection=t),dt(),64!=(64&o.flags)&&xr(r,i,o)}function Ya(e,t,n){return Ja(e,"",t,"",n),Ya}function Ja(e,t,n,i,r){var o=rt(),a=va(o,t,n,i);return a!==Fr&&co(ot(),It(),o,e,a,o[11],r,!1),Ja}function Ga(e,t,n,i,r,o,a){var s=rt(),l=ya(s,t,n,i,r,o);return l!==Fr&&co(ot(),It(),s,e,l,s[11],a,!1),Ga}function Wa(e,t,n,i,r){for(var o=e[n+1],a=null===t,s=i?Ur(o):Yr(o),l=!1;0!==s&&(!1===l||a);){var c=e[s+1];Va(e[s],t)&&(l=!0,e[s+1]=i?Gr(c):Hr(c)),s=i?Ur(c):Yr(c)}l&&(e[n+1]=i?Hr(o):Gr(o))}function Va(e,t){return null===e||null==t||(Array.isArray(e)?e[1]:e)===t||!(!Array.isArray(e)||"string"!=typeof t)&&qn(e,t)>=0}var Qa={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function Xa(e){return e.substring(Qa.key,Qa.keyEnd)}function Ka(e){return e.substring(Qa.value,Qa.valueEnd)}function $a(e,t){var n=Qa.textEnd;return n===t?-1:(t=Qa.keyEnd=function(e,t,n){for(;t32;)t++;return t}(e,Qa.key=t,n),ns(e,t,n))}function es(e,t){var n=Qa.textEnd,i=Qa.key=ns(e,t,n);return n===i?-1:(i=Qa.keyEnd=function(e,t,n){for(var i;t=65&&(-33&i)<=90||i>=48&&i<=57);)t++;return t}(e,i,n),i=is(e,i,n),i=Qa.value=ns(e,i,n),i=Qa.valueEnd=function(e,t,n){for(var i=-1,r=-1,o=-1,a=t,s=a;a32&&(s=a),o=r,r=i,i=-33&l}return s}(e,i,n),is(e,i,n))}function ts(e){Qa.key=0,Qa.keyEnd=0,Qa.value=0,Qa.valueEnd=0,Qa.textEnd=e.length}function ns(e,t,n){for(;t=0;n=es(t,n))vs(e,Xa(t),Ka(t))}function cs(e){hs(Pn,us,e,!0)}function us(e,t){for(var n=function(e){return ts(e),$a(e,ns(e,0,Qa.textEnd))}(t);n>=0;n=$a(t,n))Pn(e,Xa(t),!0)}function ds(e,t,n,i){var r=rt(),o=ot(),a=vt(2);o.firstUpdatePass&&fs(o,e,a,i),t!==Fr&&fa(r,a,t)&&ys(o,o.data[Et()],r,r[11],e,r[a+1]=function(e,t){return null==e||("string"==typeof t?e+=t:"object"==typeof e&&(e=x(ai(e)))),e}(t,n),i,a)}function hs(e,t,n,i){var r=ot(),o=vt(2);r.firstUpdatePass&&fs(r,null,o,i);var a=rt();if(n!==Fr&&fa(a,o,n)){var s=r.data[Et()];if(ws(s,i)&&!ps(r,o)){var l=i?s.classesWithoutHost:s.stylesWithoutHost;null!==l&&(n=C(l,n||"")),ka(r,s,a,n,i)}else!function(e,t,n,i,r,o,a,s){r===Fr&&(r=ie);for(var l=0,c=0,u=0=e.expandoStartIndex}function fs(e,t,n,i){var r=e.data;if(null===r[n+1]){var o=r[Et()],a=ps(e,n);ws(o,i)&&null===t&&!a&&(t=!1),t=function(e,t,n,i){var r=_t(e),o=i?t.residualClasses:t.residualStyles;if(null===r)0===(i?t.classBindings:t.styleBindings)&&(n=gs(n=ms(null,e,t,n,i),t.attrs,i),o=null);else{var a=t.directiveStylingLast;if(-1===a||e[a]!==r)if(n=ms(r,e,t,n,i),null===o){var s=function(e,t,n){var i=n?t.classBindings:t.styleBindings;if(0!==Yr(i))return e[Ur(i)]}(e,t,i);void 0!==s&&Array.isArray(s)&&function(e,t,n,i){e[Ur(n?t.classBindings:t.styleBindings)]=i}(e,t,i,s=gs(s=ms(null,e,t,s[1],i),t.attrs,i))}else o=function(e,t,n){for(var i=void 0,r=t.directiveEnd,o=1+t.directiveStylingLast;o0)&&(u=!0):c=n,r)if(0!==l){var d=Ur(e[s+1]);e[i+1]=zr(d,s),0!==d&&(e[d+1]=Jr(e[d+1],i)),e[s+1]=131071&e[s+1]|i<<17}else e[i+1]=zr(s,0),0!==s&&(e[s+1]=Jr(e[s+1],i)),s=i;else e[i+1]=zr(l,0),0===s?s=i:e[l+1]=Jr(e[l+1],i),l=i;u&&(e[i+1]=Hr(e[i+1])),Wa(e,c,i,!0),Wa(e,c,i,!1),function(e,t,n,i,r){var o=r?e.residualClasses:e.residualStyles;null!=o&&"string"==typeof t&&qn(o,t)>=0&&(n[i+1]=Gr(n[i+1]))}(t,c,e,i,o),a=zr(s,l),o?t.classBindings=a:t.styleBindings=a}(r,o,t,n,a,i)}}function ms(e,t,n,i,r){var o=null,a=n.directiveEnd,s=n.directiveStylingLast;for(-1===s?s=n.directiveStart:s++;s0;){var l=e[r],c=Array.isArray(l),u=c?l[1]:l,d=null===u,h=n[r+1];h===Fr&&(h=d?ie:void 0);var p=d?In(h,i):u===i?h:void 0;if(c&&!bs(p)&&(p=In(l,i)),bs(p)&&(s=p,a))return s;var f=e[r+1];r=a?Ur(f):Yr(f)}if(null!==t){var m=o?t.residualClasses:t.residualStyles;null!=m&&(s=In(m,i))}return s}function bs(e){return void 0!==e}function ws(e,t){return 0!=(e.flags&(t?16:32))}function Ss(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=rt(),i=ot(),r=e+Ce,o=i.firstCreatePass?Qr(i,r,1,t,null):i.data[r],a=n[r]=rr(n[11],t);vr(i,n,a,o),ct(o,!1)}function xs(e){return Cs("",e,""),xs}function Cs(e,t,n){var i=rt(),r=va(i,e,t,n);return r!==Fr&&Ro(i,Et(),r),Cs}function ks(e,t,n,i,r){var o=rt(),a=ya(o,e,t,n,i,r);return a!==Fr&&Ro(o,Et(),a),ks}function Ts(e,t,n,i,r,o,a){var s=rt(),l=function(e,t,n,i,r,o,a,s){var l=function(e,t,n,i,r){var o=ma(e,t,n,i);return fa(e,t+2,r)||o}(e,mt(),n,r,a);return vt(3),l?t+O(n)+i+O(r)+o+O(a)+s:Fr}(s,e,t,n,i,r,o,a);return l!==Fr&&Ro(s,Et(),l),Ts}function As(e,t,n){hs(Pn,us,va(rt(),e,t,n),!0)}function Zs(e,t,n){var i=rt();return fa(i,gt(),t)&&co(ot(),It(),i,e,t,i[11],n,!0),Zs}function Ms(e,t,n){var i=rt();if(fa(i,gt(),t)){var r=ot(),o=It();co(r,o,i,e,t,qo(_t(r.data),o,i),n,!0)}return Ms}var Os=void 0,Es=["en",[["a","p"],["AM","PM"],Os],[["AM","PM"],Os,Os],[["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"]],Os,[["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"]],Os,[["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}",Os,"{1} 'at' {0}",Os],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Ps={};function Is(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Ns(t);if(n)return n;var i=t.split("-")[0];if(n=Ns(i))return n;if("en"===i)return Es;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}function qs(e){return Is(e)[Ds.PluralCase]}function Ns(e){return e in Ps||(Ps[e]=te.ng&&te.ng.common&&te.ng.common.locales&&te.ng.common.locales[e]),Ps[e]}var Ds=function(e){return e[e.LocaleId=0]="LocaleId",e[e.DayPeriodsFormat=1]="DayPeriodsFormat",e[e.DayPeriodsStandalone=2]="DayPeriodsStandalone",e[e.DaysFormat=3]="DaysFormat",e[e.DaysStandalone=4]="DaysStandalone",e[e.MonthsFormat=5]="MonthsFormat",e[e.MonthsStandalone=6]="MonthsStandalone",e[e.Eras=7]="Eras",e[e.FirstDayOfWeek=8]="FirstDayOfWeek",e[e.WeekendRange=9]="WeekendRange",e[e.DateFormat=10]="DateFormat",e[e.TimeFormat=11]="TimeFormat",e[e.DateTimeFormat=12]="DateTimeFormat",e[e.NumberSymbols=13]="NumberSymbols",e[e.NumberFormats=14]="NumberFormats",e[e.CurrencyCode=15]="CurrencyCode",e[e.CurrencySymbol=16]="CurrencySymbol",e[e.CurrencyName=17]="CurrencyName",e[e.Currencies=18]="Currencies",e[e.Directionality=19]="Directionality",e[e.PluralCase=20]="PluralCase",e[e.ExtraData=21]="ExtraData",e}({}),Rs="en-US";function Ls(e){var t,n;n="Expected localeId to be defined",null==(t=e)&&function(e,t,n,i){throw new Error("ASSERTION ERROR: ".concat(e)+" [Expected=> ".concat(null," ").concat("!="," ").concat(t," <=Actual]"))}(n,t),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}function Fs(e,t,n){var i=ot();if(i.firstCreatePass){var r=Ee(e);Bs(n,i.data,i.blueprint,r,!0),Bs(t,i.data,i.blueprint,r,!1)}}function Bs(e,t,n,i,r){if(e=A(e),Array.isArray(e))for(var o=0;o>20;if(Ko(e)||!e.multi){var f=new Ut(c,r,xa),m=Us(l,t,r?d:d+p,h);-1===m?(an(tn(u,s),a,l),js(a,e,t.length),t.push(l),u.directiveStart++,u.directiveEnd++,r&&(u.providerIndexes+=1048576),n.push(f),s.push(f)):(n[m]=f,s[m]=f)}else{var g=Us(l,t,d+p,h),v=Us(l,t,d,d+p),y=v>=0&&n[v];if(r&&!y||!r&&!(g>=0&&n[g])){an(tn(u,s),a,l);var _=function(e,t,n,i,r){var o=new Ut(e,n,xa);return o.multi=[],o.index=t,o.componentProviders=0,zs(o,r,i&&!n),o}(r?Ys:Hs,n.length,r,i,c);!r&&y&&(n[v].providerFactory=_),js(a,e,t.length,0),t.push(l),u.directiveStart++,u.directiveEnd++,r&&(u.providerIndexes+=1048576),n.push(_),s.push(_)}else js(a,e,g>-1?g:v,zs(n[r?v:g],c,!r&&i));!r&&i&&y&&n[v].componentProviders++}}}function js(e,t,n,i){var r=Ko(t);if(r||t.useClass){var o=(t.useClass||t).prototype.ngOnDestroy;if(o){var a=e.destroyHooks||(e.destroyHooks=[]);if(!r&&t.multi){var s=a.indexOf(n);-1===s?a.push(n,[i,o]):a[s+1].push(i,o)}else a.push(n,o)}}}function zs(e,t,n){return n&&e.componentProviders++,e.multi.push(t)-1}function Us(e,t,n,i){for(var r=n;r1&&void 0!==arguments[1]?arguments[1]:[];return function(n){n.providersResolver=function(n,i){return Fs(n,i?i(e):e,t)}}}var Ws=function e(){(0,d.Z)(this,e)},Vs=function e(){(0,d.Z)(this,e)},Qs=function(){function e(){(0,d.Z)(this,e)}return(0,u.Z)(e,[{key:"resolveComponentFactory",value:function(e){throw function(e){var t=Error("No component factory found for ".concat(x(e),". Did you add it to @NgModule.entryComponents?"));return t.ngComponent=e,t}(e)}}]),e}(),Xs=function(){var e=function e(){(0,d.Z)(this,e)};return e.NULL=new Qs,e}();function Ks(){}function $s(e,t){return new tl(Ge(e,t))}var el=function(){return $s(st(),rt())},tl=function(){var e=function e(t){(0,d.Z)(this,e),this.nativeElement=t};return e.__NG_ELEMENT_ID__=el,e}();function nl(e){return e instanceof tl?e.nativeElement:e}var il=function e(){(0,d.Z)(this,e)},rl=function(){var e=function e(){(0,d.Z)(this,e)};return e.__NG_ELEMENT_ID__=function(){return ol()},e}(),ol=function(){var e=rt(),t=Qe(st().index,e);return function(e){return e[11]}(Te(t)?t:e)},al=function(){var e=function e(){(0,d.Z)(this,e)};return e.\u0275prov=I({token:e,providedIn:"root",factory:function(){return null}}),e}(),sl=function e(t){(0,d.Z)(this,e),this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")},ll=new sl("12.1.4"),cl=function(){function e(){(0,d.Z)(this,e)}return(0,u.Z)(e,[{key:"supports",value:function(e){return da(e)}},{key:"create",value:function(e){return new dl(e)}}]),e}(),ul=function(e,t){return t},dl=function(){function e(t){(0,d.Z)(this,e),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||ul}return(0,u.Z)(e,[{key:"forEachItem",value:function(e){var t;for(t=this._itHead;null!==t;t=t._next)e(t)}},{key:"forEachOperation",value:function(e){for(var t=this._itHead,n=this._removalsHead,i=0,r=null;t||n;){var o=!n||t&&t.currentIndex4&&void 0!==arguments[4]&&arguments[4];null!==n;){var o=t[n.index];if(null!==o&&i.push(Ye(o)),Ae(o))for(var a=ke;a-1&&(sr(e,n),On(t,n))}this._attachedToViewContainer=!1}lr(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){so(this._lView[1],this._lView,null,e)}},{key:"markForCheck",value:function(){Ao(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){Zo(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){pt(!0);try{Zo(e,t,n)}finally{pt(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._attachedToViewContainer=!0}},{key:"detachFromAppRef",value:function(){var e;this._appRef=null,Sr(this._lView[1],e=this._lView,e[11],2,null,null)}},{key:"attachToAppRef",value:function(e){if(this._attachedToViewContainer)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}]),e}(),kl=function(e){(0,h.Z)(n,e);var t=(0,p.Z)(n);function n(e){var i;return(0,d.Z)(this,n),(i=t.call(this,e))._view=e,i}return(0,u.Z)(n,[{key:"detectChanges",value:function(){Mo(this._view)}},{key:"checkNoChanges",value:function(){!function(e){pt(!0);try{Mo(e)}finally{pt(!1)}}(this._view)}},{key:"context",get:function(){return null}}]),n}(Cl),Tl=function(e){return function(e,t,n){if(Me(e)&&!n){var i=Qe(e.index,t);return new Cl(i,i)}return 47&e.type?new Cl(t[16],t):null}(st(),rt(),16==(16&e))},Al=function(){var e=function e(){(0,d.Z)(this,e)};return e.__NG_ELEMENT_ID__=Tl,e}(),Zl=[new gl],Ml=new bl([new cl]),Ol=new Sl(Zl),El=function(){return ql(st(),rt())},Pl=function(){var e=function e(){(0,d.Z)(this,e)};return e.__NG_ELEMENT_ID__=El,e}(),Il=function(e){(0,h.Z)(n,e);var t=(0,p.Z)(n);function n(e,i,r){var o;return(0,d.Z)(this,n),(o=t.call(this))._declarationLView=e,o._declarationTContainer=i,o.elementRef=r,o}return(0,u.Z)(n,[{key:"createEmbeddedView",value:function(e){var t=this._declarationTContainer.tViews,n=Vr(this._declarationLView,t,e,16,null,t.declTNode,null,null,null,null);n[17]=this._declarationLView[this._declarationTContainer.index];var i=this._declarationLView[19];return null!==i&&(n[19]=i.createEmbeddedView(t)),Kr(t,n,e),new Cl(n)}}]),n}(Pl);function ql(e,t){return 4&e.type?new Il(t,e,$s(e,t)):null}var Nl=function e(){(0,d.Z)(this,e)},Dl=function e(){(0,d.Z)(this,e)},Rl=function(){return zl(st(),rt())},Ll=function(){var e=function e(){(0,d.Z)(this,e)};return e.__NG_ELEMENT_ID__=Rl,e}(),Fl=function(e){(0,h.Z)(n,e);var t=(0,p.Z)(n);function n(e,i,r){var o;return(0,d.Z)(this,n),(o=t.call(this))._lContainer=e,o._hostTNode=i,o._hostLView=r,o}return(0,u.Z)(n,[{key:"element",get:function(){return $s(this._hostTNode,this._hostLView)}},{key:"injector",get:function(){return new yn(this._hostTNode,this._hostLView)}},{key:"parentInjector",get:function(){var e=on(this._hostTNode,this._hostLView);if(Vt(e)){var t=Xt(e,this._hostLView),n=Qt(e);return new yn(t[1].data[n+8],t)}return new yn(null,this._hostLView)}},{key:"clear",value:function(){for(;this.length>0;)this.remove(this.length-1)}},{key:"get",value:function(e){var t=Bl(this._lContainer);return null!==t&&t[e]||null}},{key:"length",get:function(){return this._lContainer.length-ke}},{key:"createEmbeddedView",value:function(e,t,n){var i=e.createEmbeddedView(t||{});return this.insert(i,n),i}},{key:"createComponent",value:function(e,t,n,i,r){var o=n||this.parentInjector;if(!r&&null==e.ngModule&&o){var a=o.get(Nl,null);a&&(r=a)}var s=e.create(o,i,void 0,r);return this.insert(s.hostView,t),s}},{key:"insert",value:function(e,t){var n=e._lView,i=n[1];if(Ae(n[3])){var r=this.indexOf(e);if(-1!==r)this.detach(r);else{var o=n[3],a=new Fl(o,o[6],o[3]);a.detach(a.indexOf(e))}}var s=this._adjustIndex(t),l=this._lContainer;!function(e,t,n,i){var r=ke+i,o=n.length;i>0&&(n[r-1][4]=t),i1&&void 0!==arguments[1]?arguments[1]:0;return null==e?this.length+t:e}}]),n}(Ll);function Bl(e){return e[8]}function jl(e){return e[8]||(e[8]=[])}function zl(e,t){var n,i=t[e.index];if(Ae(i))n=i;else{var r;if(8&e.type)r=Ye(i);else{var o=t[11];r=o.createComment("");var a=Ge(e,t);dr(o,fr(o,a),r,function(e,t){return Ue(e)?e.nextSibling(t):t.nextSibling}(o,a),!1)}t[e.index]=n=So(i,t,r,e),To(t,n)}return new Fl(n,e,t)}var Ul={},Hl=function(e){(0,h.Z)(n,e);var t=(0,p.Z)(n);function n(e){var i;return(0,d.Z)(this,n),(i=t.call(this)).ngModule=e,i}return(0,u.Z)(n,[{key:"resolveComponentFactory",value:function(e){var t=Se(e);return new Gl(t,this.ngModule)}}]),n}(Xs);function Yl(e){var t=[];for(var n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}var Jl=new Cn("SCHEDULER_TOKEN",{providedIn:"root",factory:function(){return Gi}}),Gl=function(e){(0,h.Z)(n,e);var t=(0,p.Z)(n);function n(e,i){var r;return(0,d.Z)(this,n),(r=t.call(this)).componentDef=e,r.ngModule=i,r.componentType=e.type,r.selector=e.selectors.map(Lr).join(","),r.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],r.isBoundToModule=!!i,r}return(0,u.Z)(n,[{key:"inputs",get:function(){return Yl(this.componentDef.inputs)}},{key:"outputs",get:function(){return Yl(this.componentDef.outputs)}},{key:"create",value:function(e,t,n,i){var r,o,a=(i=i||this.ngModule)?function(e,t){return{get:function(n,i,r){var o=e.get(n,Ul,r);return o!==Ul||i===Ul?o:t.get(n,i,r)}}}(e,i.injector):e,s=a.get(il,He),l=a.get(al,null),c=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",d=n?function(e,t,n){if(Ue(e))return e.selectRootElement(t,n===Q.ShadowDom);var i="string"==typeof t?e.querySelector(t):t;return i.textContent="",i}(c,n,this.componentDef.encapsulation):or(s.createRenderer(null,this.componentDef),u,function(e){var t=e.toLowerCase();return"svg"===t?Fe:"math"===t?"http://www.w3.org/1998/MathML/":null}(u)),h=this.componentDef.onPush?576:528,p={components:[],scheduler:Gi,clean:Eo,playerHandler:null,flags:0},f=ao(0,null,null,1,0,null,null,null,null,null),m=Vr(null,f,p,h,null,null,s,c,l,a);Ct(m);try{var g=function(e,t,n,i,r,o){var a=n[1];n[20]=e;var s=Qr(a,20,2,"#host",null),l=s.mergedAttrs=t.hostAttrs;null!==l&&(Lo(s,l,!0),null!==e&&(Ht(r,e,l),null!==s.classes&&Tr(r,e,s.classes),null!==s.styles&&kr(r,e,s.styles)));var c=i.createRenderer(e,t),u=Vr(n,oo(t),null,t.onPush?64:16,n[20],s,i,c,null,null);return a.firstCreatePass&&(an(tn(s,n),a,t.type),fo(a,s),go(s,n.length,1)),To(n,u),n[20]=u}(d,this.componentDef,m,s,c);if(d)if(n)Ht(c,d,["ng-version",ll.full]);else{var v=function(e){for(var t=[],n=[],i=1,r=2;i0&&Tr(c,d,_.join(" "))}if(o=We(f,Ce),void 0!==t)for(var b=o.projection=[],w=0;w1&&void 0!==arguments[1]?arguments[1]:ta.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:H.Default;return e===ta||e===Nl||e===Fo?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(function(e){return e()}),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}}]),n}(Nl),Xl=function(e){(0,h.Z)(n,e);var t=(0,p.Z)(n);function n(e){var i,r,o;return(0,d.Z)(this,n),(i=t.call(this)).moduleType=e,null!==xe(e)&&(r=e,o=new Set,function e(t){var n=xe(t,!0),i=n.id;null!==i&&(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(x(t)," vs ").concat(x(t.name)))}(i,Vl.get(i),t),Vl.set(i,t));var r,a=Qi(n.imports),l=(0,s.Z)(a);try{for(l.s();!(r=l.n()).done;){var c=r.value;o.has(c)||(o.add(c),e(c))}}catch(u){l.e(u)}finally{l.f()}}(r)),i}return(0,u.Z)(n,[{key:"create",value:function(e){return new Ql(this.moduleType,e)}}]),n}(Dl);function Kl(e,t,n){var i=ft()+e,r=rt();return r[i]===Fr?pa(r,i,n?t.call(n):t()):function(e,t){return e[t]}(r,i)}function $l(e,t,n,i){return nc(rt(),ft(),e,t,n,i)}function ec(e,t,n,i,r){return ic(rt(),ft(),e,t,n,i,r)}function tc(e,t){var n=e[t];return n===Fr?void 0:n}function nc(e,t,n,i,r,o){var a=t+n;return fa(e,a,r)?pa(e,a+1,o?i.call(o,r):i(r)):tc(e,a+1)}function ic(e,t,n,i,r,o,a){var s=t+n;return ma(e,s,r,o)?pa(e,s+2,a?i.call(a,r,o):i(r,o)):tc(e,s+2)}function rc(e,t){var n,i=ot(),r=e+Ce;i.firstCreatePass?(n=function(e,t){if(t)for(var n=t.length-1;n>=0;n--){var i=t[n];if(e===i.name)return i}throw new M("302","The pipe '".concat(e,"' could not be found!"))}(t,i.pipeRegistry),i.data[r]=n,n.onDestroy&&(i.destroyHooks||(i.destroyHooks=[])).push(r,n.onDestroy)):n=i.data[r];var o=n.factory||(n.factory=Pe(n.type)),a=J(xa);try{var s=$t(!1),l=o();return $t(s),function(e,t,n,i){n>=e.data.length&&(e.data[n]=null,e.blueprint[n]=null),t[n]=i}(i,rt(),r,l),l}finally{J(a)}}function oc(e,t,n){var i=e+Ce,r=rt(),o=Ve(r,i);return lc(r,sc(r,i)?nc(r,ft(),t,o.transform,n,o):o.transform(n))}function ac(e,t,n,i){var r=e+Ce,o=rt(),a=Ve(o,r);return lc(o,sc(o,r)?ic(o,ft(),t,a.transform,n,i,a):a.transform(n,i))}function sc(e,t){return e[1].data[t].pure}function lc(e,t){return ua.isWrapped(t)&&(t=ua.unwrap(t),e[mt()]=Fr),t}function cc(e){return function(t){setTimeout(e,void 0,t)}}var uc=function(e){(0,h.Z)(n,e);var t=(0,p.Z)(n);function n(){var e,i=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,d.Z)(this,n),(e=t.call(this)).__isAsync=i,e}return(0,u.Z)(n,[{key:"emit",value:function(e){(0,i.Z)((0,r.Z)(n.prototype),"next",this).call(this,e)}},{key:"subscribe",value:function(e,t,o){var a,s,l,c=e,u=t||function(){return null},d=o;if(e&&"object"==typeof e){var h=e;c=null===(a=h.next)||void 0===a?void 0:a.bind(h),u=null===(s=h.error)||void 0===s?void 0:s.bind(h),d=null===(l=h.complete)||void 0===l?void 0:l.bind(h)}this.__isAsync&&(u=cc(u),c&&(c=cc(c)),d&&(d=cc(d)));var p=(0,i.Z)((0,r.Z)(n.prototype),"subscribe",this).call(this,{next:c,error:u,complete:d});return e instanceof g.w&&e.add(p),p}}]),n}(v.xQ);function dc(){return this._results[ca()]()}var hc=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];(0,d.Z)(this,e),this._emitDistinctChangesOnly=t,this.dirty=!0,this._results=[],this._changesDetected=!1,this._changes=null,this.length=0,this.first=void 0,this.last=void 0;var n=ca(),i=e.prototype;i[n]||(i[n]=dc)}return(0,u.Z)(e,[{key:"changes",get:function(){return this._changes||(this._changes=new uc)}},{key:"get",value:function(e){return this._results[e]}},{key:"map",value:function(e){return this._results.map(e)}},{key:"filter",value:function(e){return this._results.filter(e)}},{key:"find",value:function(e){return this._results.find(e)}},{key:"reduce",value:function(e,t){return this._results.reduce(e,t)}},{key:"forEach",value:function(e){this._results.forEach(e)}},{key:"some",value:function(e){return this._results.some(e)}},{key:"toArray",value:function(){return this._results.slice()}},{key:"toString",value:function(){return this._results.toString()}},{key:"reset",value:function(e,t){var n=this;n.dirty=!1;var i=An(e);(this._changesDetected=!function(e,t,n){if(e.length!==t.length)return!1;for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:[];(0,d.Z)(this,e),this.queries=t}return(0,u.Z)(e,[{key:"createEmbeddedView",value:function(t){var n=t.queries;if(null!==n){for(var i=null!==t.contentQueries?t.contentQueries[0]:n.length,r=[],o=0;o2&&void 0!==arguments[2]?arguments[2]:null;(0,d.Z)(this,e),this.predicate=t,this.flags=n,this.read=i},gc=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];(0,d.Z)(this,e),this.queries=t}return(0,u.Z)(e,[{key:"elementStart",value:function(e,t){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:-1;(0,d.Z)(this,e),this.metadata=t,this.matches=null,this.indexInDeclarationView=-1,this.crossesNgTemplate=!1,this._appliesToNextNode=!0,this._declarationNodeIndex=n}return(0,u.Z)(e,[{key:"elementStart",value:function(e,t){this.isApplyingToNode(t)&&this.matchTNode(e,t)}},{key:"elementEnd",value:function(e){this._declarationNodeIndex===e.index&&(this._appliesToNextNode=!1)}},{key:"template",value:function(e,t){this.elementStart(e,t)}},{key:"embeddedTView",value:function(t,n){return this.isApplyingToNode(t)?(this.crossesNgTemplate=!0,this.addMatch(-t.index,n),new e(this.metadata)):null}},{key:"isApplyingToNode",value:function(e){if(this._appliesToNextNode&&1!=(1&this.metadata.flags)){for(var t=this._declarationNodeIndex,n=e.parent;null!==n&&8&n.type&&n.index!==t;)n=n.parent;return t===(null!==n?n.index:-1)}return this._appliesToNextNode}},{key:"matchTNode",value:function(e,t){var n=this.metadata.predicate;if(Array.isArray(n))for(var i=0;i0)i.push(a[s/2]);else{for(var c=o[s+1],u=t[-l],d=ke;d0&&(r=setTimeout(function(){i._callbacks=i._callbacks.filter(function(e){return e.timeoutId!==r}),e(i._didWork,i.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(zn(Xc))},e.\u0275prov=I({token:e,factory:e.\u0275fac}),e}(),ou=function(){var e=function(){function e(){(0,d.Z)(this,e),this._applications=new Map,lu.addToWindow(this)}return(0,u.Z)(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return lu.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=I({token:e,factory:e.\u0275fac}),e}();function au(e){lu=e}var su,lu=new(function(){function e(){(0,d.Z)(this,e)}return(0,u.Z)(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),cu=!0,uu=!1;function du(){return uu=!0,cu}function hu(){if(uu)throw new Error("Cannot enable prod mode after platform setup.");cu=!1}var pu=function(e,t,n){var i=new Xl(n);return Promise.resolve(i)},fu=new Cn("AllowMultipleToken"),mu=function e(t,n){(0,d.Z)(this,e),this.name=t,this.token=n};function gu(e){if(su&&!su.destroyed&&!su.injector.get(fu,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");su=e.get(bu);var t=e.get(Nc,null);return t&&t.forEach(function(e){return e()}),su}function vu(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],i="Platform: ".concat(t),r=new Cn(i);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],o=_u();if(!o||o.injector.get(fu,!1))if(e)e(n.concat(t).concat({provide:r,useValue:!0}));else{var a=n.concat(t).concat({provide:r,useValue:!0},{provide:jo,useValue:"platform"});gu(ta.create({providers:a,name:i}))}return yu(r)}}function yu(e){var t=_u();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}function _u(){return su&&!su.destroyed?su:null}var bu=function(){var e=function(){function e(t){(0,d.Z)(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return(0,u.Z)(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n,i,r=this,o=(i={ngZoneEventCoalescing:t&&t.ngZoneEventCoalescing||!1,ngZoneRunCoalescing:t&&t.ngZoneRunCoalescing||!1},"noop"===(n=t?t.ngZone:void 0)?new iu:("zone.js"===n?void 0:n)||new Xc({enableLongStackTrace:du(),shouldCoalesceEventChangeDetection:!!(null==i?void 0:i.ngZoneEventCoalescing),shouldCoalesceRunChangeDetection:!!(null==i?void 0:i.ngZoneRunCoalescing)})),a=[{provide:Xc,useValue:o}];return o.run(function(){var t=ta.create({providers:a,parent:r.injector,name:e.moduleType.name}),n=e.create(t),i=n.injector.get(Ji,null);if(!i)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.runOutsideAngular(function(){var e=o.onError.subscribe({next:function(e){i.handleError(e)}});n.onDestroy(function(){xu(r._modules,n),e.unsubscribe()})}),function(e,t,i){try{var o=((a=n.injector.get(Ec)).runInitializers(),a.donePromise.then(function(){return Ls(n.injector.get(Fc,Rs)||Rs),r._moduleDoBootstrap(n),n}));return Ia(o)?o.catch(function(n){throw t.runOutsideAngular(function(){return e.handleError(n)}),n}):o}catch(s){throw t.runOutsideAngular(function(){return e.handleError(s)}),s}var a}(i,o)})}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],i=wu({},n);return pu(0,0,e).then(function(e){return t.bootstrapModuleFactory(e,i)})}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(Su);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(function(e){return t.bootstrap(e)});else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(x(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. ')+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"injector",get:function(){return this._injector}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(function(e){return e.destroy()}),this._destroyListeners.forEach(function(e){return e()}),this._destroyed=!0}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(zn(ta))},e.\u0275prov=I({token:e,factory:e.\u0275fac}),e}();function wu(e,t){return Array.isArray(t)?t.reduce(wu,e):Object.assign(Object.assign({},e),t)}var Su=function(){var e=function(){function e(t,n,i,r,o){var a=this;(0,d.Z)(this,e),this._zone=t,this._injector=n,this._exceptionHandler=i,this._componentFactoryResolver=r,this._initStatus=o,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._onMicrotaskEmptySubscription=this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run(function(){a.tick()})}});var s=new y.y(function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular(function(){e.next(a._stable),e.complete()})}),l=new y.y(function(e){var t;a._zone.runOutsideAngular(function(){t=a._zone.onStable.subscribe(function(){Xc.assertNotInAngularZone(),Qc(function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))})})});var n=a._zone.onUnstable.subscribe(function(){Xc.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular(function(){e.next(!1)}))});return function(){t.unsubscribe(),n.unsubscribe()}});this.isStable=(0,_.T)(s,l.pipe((0,b.B)()))}return(0,u.Z)(e,[{key:"bootstrap",value:function(e,t){var n,i=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof Vs?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var r=n.isBoundToModule?void 0:this._injector.get(Nl),o=n.create(ta.NULL,[],t||n.selector,r),a=o.location.nativeElement,s=o.injector.get(ru,null),l=s&&o.injector.get(ou);return s&&l&&l.registerApplication(a,s),o.onDestroy(function(){i.detachView(o.hostView),xu(i.components,o),l&&l.unregisterApplication(a)}),this._loadComponent(o),o}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t,n=(0,s.Z)(this._views);try{for(n.s();!(t=n.n()).done;)t.value.detectChanges()}catch(i){n.e(i)}finally{n.f()}}catch(r){this._zone.runOutsideAngular(function(){return e._exceptionHandler.handleError(r)})}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;xu(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Rc,[]).concat(this._bootstrapListeners).forEach(function(t){return t(e)})}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach(function(e){return e.destroy()}),this._onMicrotaskEmptySubscription.unsubscribe()}},{key:"viewCount",get:function(){return this._views.length}}]),e}();return e.\u0275fac=function(t){return new(t||e)(zn(Xc),zn(ta),zn(Ji),zn(Xs),zn(Ec))},e.\u0275prov=I({token:e,factory:e.\u0275fac}),e}();function xu(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var Cu=function e(){(0,d.Z)(this,e)},ku=function e(){(0,d.Z)(this,e)},Tu={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"},Au=function(){var e=function(){function e(t,n){(0,d.Z)(this,e),this._compiler=t,this._config=n||Tu}return(0,u.Z)(e,[{key:"load",value:function(e){return this.loadAndCompile(e)}},{key:"loadAndCompile",value:function(e){var t=this,i=e.split("#"),r=(0,a.Z)(i,2),o=r[0],s=r[1];return void 0===s&&(s="default"),n(98255)(o).then(function(e){return e[s]}).then(function(e){return Zu(e,o,s)}).then(function(e){return t._compiler.compileModuleAsync(e)})}},{key:"loadFactory",value:function(e){var t=e.split("#"),i=(0,a.Z)(t,2),r=i[0],o=i[1],s="NgFactory";return void 0===o&&(o="default",s=""),n(98255)(this._config.factoryPathPrefix+r+this._config.factoryPathSuffix).then(function(e){return e[o+s]}).then(function(e){return Zu(e,r,o)})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(zn(Wc),zn(ku,8))},e.\u0275prov=I({token:e,factory:e.\u0275fac}),e}();function Zu(e,t,n){if(!e)throw new Error("Cannot find '".concat(n,"' in '").concat(t,"'"));return e}var Mu=function(e){(0,h.Z)(n,e);var t=(0,p.Z)(n);function n(){return(0,d.Z)(this,n),t.apply(this,arguments)}return n}(function(e){(0,h.Z)(n,e);var t=(0,p.Z)(n);function n(){return(0,d.Z)(this,n),t.apply(this,arguments)}return n}(Al)),Ou=function(e){return null},Eu=vu(null,"core",[{provide:Dc,useValue:"unknown"},{provide:bu,deps:[ta]},{provide:ou,deps:[]},{provide:Lc,deps:[]}]),Pu=[{provide:Su,useClass:Su,deps:[Xc,ta,Ji,Xs,Ec]},{provide:Jl,deps:[Xc],useFactory:function(e){var t=[];return e.onStable.subscribe(function(){for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:Ec,useClass:Ec,deps:[[new Qn,Oc]]},{provide:Wc,useClass:Wc,deps:[]},Ic,{provide:bl,useFactory:function(){return Ml},deps:[]},{provide:Sl,useFactory:function(){return Ol},deps:[]},{provide:Fc,useFactory:function(e){return Ls(e=e||"undefined"!=typeof $localize&&$localize.locale||Rs),e},deps:[[new Vn(Fc),new Qn,new Xn]]},{provide:Bc,useValue:"USD"}],Iu=function(){var e=function e(t){(0,d.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)(zn(Su))},e.\u0275mod=ve({type:e}),e.\u0275inj=N({providers:Pu}),e}()},19061:function(e,t,n){"use strict";n.d(t,{Zs:function(){return Re},Fj:function(){return b},qu:function(){return ze},NI:function(){return ge},u:function(){return Ie},cw:function(){return ve},sg:function(){return Ee},u5:function(){return Fe},Cf:function(){return x},JU:function(){return v},a5:function(){return H},JJ:function(){return J},JL:function(){return G},F:function(){return we},On:function(){return Ce},wV:function(){return Ae},UX:function(){return Be},kI:function(){return T},_Y:function(){return ke}});var i=n(3574),r=n(20454),o=n(25801),a=n(49843),s=n(37859),l=n(61680),c=n(11254),u=n(37602),d=n(40098),h=n(61493),p=n(91925),f=n(85639),m=function(){var e=function(){function e(t,n){(0,l.Z)(this,e),this._renderer=t,this._elementRef=n,this.onChange=function(e){},this.onTouched=function(){}}return(0,c.Z)(e,[{key:"setProperty",value:function(e,t){this._renderer.setProperty(this._elementRef.nativeElement,e,t)}},{key:"registerOnTouched",value:function(e){this.onTouched=e}},{key:"registerOnChange",value:function(e){this.onChange=e}},{key:"setDisabledState",value:function(e){this.setProperty("disabled",e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(u.Y36(u.Qsj),u.Y36(u.SBq))},e.\u0275dir=u.lG2({type:e}),e}(),g=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(){return(0,l.Z)(this,n),t.apply(this,arguments)}return n}(m);return e.\u0275fac=function(){var t;return function(n){return(t||(t=u.n5z(e)))(n||e)}}(),e.\u0275dir=u.lG2({type:e,features:[u.qOj]}),e}(),v=new u.OlP("NgValueAccessor"),y={provide:v,useExisting:(0,u.Gpc)(function(){return b}),multi:!0},_=new u.OlP("CompositionEventMode"),b=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r){var o,a;return(0,l.Z)(this,n),(o=t.call(this,e,i))._compositionMode=r,o._composing=!1,null==o._compositionMode&&(o._compositionMode=(a=(0,d.q)()?(0,d.q)().getUserAgent():"",!/android (\d+)/.test(a.toLowerCase()))),o}return(0,c.Z)(n,[{key:"writeValue",value:function(e){this.setProperty("value",null==e?"":e)}},{key:"_handleInput",value:function(e){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(e)}},{key:"_compositionStart",value:function(){this._composing=!0}},{key:"_compositionEnd",value:function(e){this._composing=!1,this._compositionMode&&this.onChange(e)}}]),n}(m);return e.\u0275fac=function(t){return new(t||e)(u.Y36(u.Qsj),u.Y36(u.SBq),u.Y36(_,8))},e.\u0275dir=u.lG2({type:e,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(e,t){1&e&&u.NdJ("input",function(e){return t._handleInput(e.target.value)})("blur",function(){return t.onTouched()})("compositionstart",function(){return t._compositionStart()})("compositionend",function(e){return t._compositionEnd(e.target.value)})},features:[u._Bn([y]),u.qOj]}),e}();function w(e){return null==e||0===e.length}function S(e){return null!=e&&"number"==typeof e.length}var x=new u.OlP("NgValidators"),C=new u.OlP("NgAsyncValidators"),k=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,T=function(){function e(){(0,l.Z)(this,e)}return(0,c.Z)(e,null,[{key:"min",value:function(e){return t=e,function(e){if(w(e.value)||w(t))return null;var n=parseFloat(e.value);return!isNaN(n)&&nt?{max:{max:t,actual:e.value}}:null};var t}},{key:"required",value:function(e){return A(e)}},{key:"requiredTrue",value:function(e){return Z(e)}},{key:"email",value:function(e){return function(e){return w(e.value)||k.test(e.value)?null:{email:!0}}(e)}},{key:"minLength",value:function(e){return t=e,function(e){return w(e.value)||!S(e.value)?null:e.value.lengtht?{maxlength:{requiredLength:t,actualLength:e.value.length}}:null};var t}},{key:"pattern",value:function(e){return(t=e)?("string"==typeof t?(i="","^"!==t.charAt(0)&&(i+="^"),i+=t,"$"!==t.charAt(t.length-1)&&(i+="$"),n=new RegExp(i)):(i=t.toString(),n=t),function(e){if(w(e.value))return null;var t=e.value;return n.test(t)?null:{pattern:{requiredPattern:i,actualValue:t}}}):M;var t,n,i}},{key:"nullValidator",value:function(e){return null}},{key:"compose",value:function(e){return N(e)}},{key:"composeAsync",value:function(e){return R(e)}}]),e}();function A(e){return w(e.value)?{required:!0}:null}function Z(e){return!0===e.value?null:{required:!0}}function M(e){return null}function O(e){return null!=e}function E(e){var t=(0,u.QGY)(e)?(0,h.D)(e):e;return(0,u.CqO)(t),t}function P(e){var t={};return e.forEach(function(e){t=null!=e?Object.assign(Object.assign({},t),e):t}),0===Object.keys(t).length?null:t}function I(e,t){return t.map(function(t){return t(e)})}function q(e){return e.map(function(e){return function(e){return!e.validate}(e)?e:function(t){return e.validate(t)}})}function N(e){if(!e)return null;var t=e.filter(O);return 0==t.length?null:function(e){return P(I(e,t))}}function D(e){return null!=e?N(q(e)):null}function R(e){if(!e)return null;var t=e.filter(O);return 0==t.length?null:function(e){var n=I(e,t).map(E);return(0,p.D)(n).pipe((0,f.U)(P))}}function L(e){return null!=e?R(q(e)):null}function F(e,t){return null===e?[t]:Array.isArray(e)?[].concat((0,o.Z)(e),[t]):[e,t]}function B(e){return e._rawValidators}function j(e){return e._rawAsyncValidators}var z=function(){var e=function(){function e(){(0,l.Z)(this,e),this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}return(0,c.Z)(e,[{key:"value",get:function(){return this.control?this.control.value:null}},{key:"valid",get:function(){return this.control?this.control.valid:null}},{key:"invalid",get:function(){return this.control?this.control.invalid:null}},{key:"pending",get:function(){return this.control?this.control.pending:null}},{key:"disabled",get:function(){return this.control?this.control.disabled:null}},{key:"enabled",get:function(){return this.control?this.control.enabled:null}},{key:"errors",get:function(){return this.control?this.control.errors:null}},{key:"pristine",get:function(){return this.control?this.control.pristine:null}},{key:"dirty",get:function(){return this.control?this.control.dirty:null}},{key:"touched",get:function(){return this.control?this.control.touched:null}},{key:"status",get:function(){return this.control?this.control.status:null}},{key:"untouched",get:function(){return this.control?this.control.untouched:null}},{key:"statusChanges",get:function(){return this.control?this.control.statusChanges:null}},{key:"valueChanges",get:function(){return this.control?this.control.valueChanges:null}},{key:"path",get:function(){return null}},{key:"_setValidators",value:function(e){this._rawValidators=e||[],this._composedValidatorFn=D(this._rawValidators)}},{key:"_setAsyncValidators",value:function(e){this._rawAsyncValidators=e||[],this._composedAsyncValidatorFn=L(this._rawAsyncValidators)}},{key:"validator",get:function(){return this._composedValidatorFn||null}},{key:"asyncValidator",get:function(){return this._composedAsyncValidatorFn||null}},{key:"_registerOnDestroy",value:function(e){this._onDestroyCallbacks.push(e)}},{key:"_invokeOnDestroyCallbacks",value:function(){this._onDestroyCallbacks.forEach(function(e){return e()}),this._onDestroyCallbacks=[]}},{key:"reset",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0;this.control&&this.control.reset(e)}},{key:"hasError",value:function(e,t){return!!this.control&&this.control.hasError(e,t)}},{key:"getError",value:function(e,t){return this.control?this.control.getError(e,t):null}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=u.lG2({type:e}),e}(),U=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(){return(0,l.Z)(this,n),t.apply(this,arguments)}return(0,c.Z)(n,[{key:"formDirective",get:function(){return null}},{key:"path",get:function(){return null}}]),n}(z);return e.\u0275fac=function(){var t;return function(n){return(t||(t=u.n5z(e)))(n||e)}}(),e.\u0275dir=u.lG2({type:e,features:[u.qOj]}),e}(),H=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(){var e;return(0,l.Z)(this,n),(e=t.apply(this,arguments))._parent=null,e.name=null,e.valueAccessor=null,e}return n}(z),Y=function(){function e(t){(0,l.Z)(this,e),this._cd=t}return(0,c.Z)(e,[{key:"is",value:function(e){var t,n,i;return"submitted"===e?!!(null===(t=this._cd)||void 0===t?void 0:t.submitted):!!(null===(i=null===(n=this._cd)||void 0===n?void 0:n.control)||void 0===i?void 0:i[e])}}]),e}(),J=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e){return(0,l.Z)(this,n),t.call(this,e)}return n}(Y);return e.\u0275fac=function(t){return new(t||e)(u.Y36(H,2))},e.\u0275dir=u.lG2({type:e,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(e,t){2&e&&u.ekj("ng-untouched",t.is("untouched"))("ng-touched",t.is("touched"))("ng-pristine",t.is("pristine"))("ng-dirty",t.is("dirty"))("ng-valid",t.is("valid"))("ng-invalid",t.is("invalid"))("ng-pending",t.is("pending"))},features:[u.qOj]}),e}(),G=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e){return(0,l.Z)(this,n),t.call(this,e)}return n}(Y);return e.\u0275fac=function(t){return new(t||e)(u.Y36(U,10))},e.\u0275dir=u.lG2({type:e,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(e,t){2&e&&u.ekj("ng-untouched",t.is("untouched"))("ng-touched",t.is("touched"))("ng-pristine",t.is("pristine"))("ng-dirty",t.is("dirty"))("ng-valid",t.is("valid"))("ng-invalid",t.is("invalid"))("ng-pending",t.is("pending"))("ng-submitted",t.is("submitted"))},features:[u.qOj]}),e}();function W(e,t){return[].concat((0,o.Z)(t.path),[e])}function V(e,t){K(e,t),t.valueAccessor.writeValue(e.value),function(e,t){t.valueAccessor.registerOnChange(function(n){e._pendingValue=n,e._pendingChange=!0,e._pendingDirty=!0,"change"===e.updateOn&&ee(e,t)})}(e,t),function(e,t){var n=function(e,n){t.valueAccessor.writeValue(e),n&&t.viewToModelUpdate(e)};e.registerOnChange(n),t._registerOnDestroy(function(){e._unregisterOnChange(n)})}(e,t),function(e,t){t.valueAccessor.registerOnTouched(function(){e._pendingTouched=!0,"blur"===e.updateOn&&e._pendingChange&&ee(e,t),"submit"!==e.updateOn&&e.markAsTouched()})}(e,t),function(e,t){if(t.valueAccessor.setDisabledState){var n=function(e){t.valueAccessor.setDisabledState(e)};e.registerOnDisabledChange(n),t._registerOnDestroy(function(){e._unregisterOnDisabledChange(n)})}}(e,t)}function Q(e,t){var n=function(){};t.valueAccessor&&(t.valueAccessor.registerOnChange(n),t.valueAccessor.registerOnTouched(n)),$(e,t),e&&(t._invokeOnDestroyCallbacks(),e._registerOnCollectionChange(function(){}))}function X(e,t){e.forEach(function(e){e.registerOnValidatorChange&&e.registerOnValidatorChange(t)})}function K(e,t){var n=B(e);null!==t.validator?e.setValidators(F(n,t.validator)):"function"==typeof n&&e.setValidators([n]);var i=j(e);null!==t.asyncValidator?e.setAsyncValidators(F(i,t.asyncValidator)):"function"==typeof i&&e.setAsyncValidators([i]);var r=function(){return e.updateValueAndValidity()};X(t._rawValidators,r),X(t._rawAsyncValidators,r)}function $(e,t){var n=!1;if(null!==e){if(null!==t.validator){var i=B(e);if(Array.isArray(i)&&i.length>0){var r=i.filter(function(e){return e!==t.validator});r.length!==i.length&&(n=!0,e.setValidators(r))}}if(null!==t.asyncValidator){var o=j(e);if(Array.isArray(o)&&o.length>0){var a=o.filter(function(e){return e!==t.asyncValidator});a.length!==o.length&&(n=!0,e.setAsyncValidators(a))}}}var s=function(){};return X(t._rawValidators,s),X(t._rawAsyncValidators,s),n}function ee(e,t){e._pendingDirty&&e.markAsDirty(),e.setValue(e._pendingValue,{emitModelToViewChange:!1}),t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1}function te(e,t){K(e,t)}function ne(e,t){if(!e.hasOwnProperty("model"))return!1;var n=e.model;return!!n.isFirstChange()||!Object.is(t,n.currentValue)}function ie(e,t){e._syncPendingControls(),t.forEach(function(e){var t=e.control;"submit"===t.updateOn&&t._pendingChange&&(e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1)})}function re(e,t){if(!t)return null;Array.isArray(t);var n=void 0,i=void 0,r=void 0;return t.forEach(function(e){e.constructor===b?n=e:Object.getPrototypeOf(e.constructor)===g?i=e:r=e}),r||i||n||null}function oe(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var ae="VALID",se="INVALID",le="PENDING",ce="DISABLED";function ue(e){return(fe(e)?e.validators:e)||null}function de(e){return Array.isArray(e)?D(e):e||null}function he(e,t){return(fe(t)?t.asyncValidators:e)||null}function pe(e){return Array.isArray(e)?L(e):e||null}function fe(e){return null!=e&&!Array.isArray(e)&&"object"==typeof e}var me=function(){function e(t,n){(0,l.Z)(this,e),this._hasOwnPendingAsyncValidator=!1,this._onCollectionChange=function(){},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._rawValidators=t,this._rawAsyncValidators=n,this._composedValidatorFn=de(this._rawValidators),this._composedAsyncValidatorFn=pe(this._rawAsyncValidators)}return(0,c.Z)(e,[{key:"validator",get:function(){return this._composedValidatorFn},set:function(e){this._rawValidators=this._composedValidatorFn=e}},{key:"asyncValidator",get:function(){return this._composedAsyncValidatorFn},set:function(e){this._rawAsyncValidators=this._composedAsyncValidatorFn=e}},{key:"parent",get:function(){return this._parent}},{key:"valid",get:function(){return this.status===ae}},{key:"invalid",get:function(){return this.status===se}},{key:"pending",get:function(){return this.status==le}},{key:"disabled",get:function(){return this.status===ce}},{key:"enabled",get:function(){return this.status!==ce}},{key:"dirty",get:function(){return!this.pristine}},{key:"untouched",get:function(){return!this.touched}},{key:"updateOn",get:function(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}},{key:"setValidators",value:function(e){this._rawValidators=e,this._composedValidatorFn=de(e)}},{key:"setAsyncValidators",value:function(e){this._rawAsyncValidators=e,this._composedAsyncValidatorFn=pe(e)}},{key:"clearValidators",value:function(){this.validator=null}},{key:"clearAsyncValidators",value:function(){this.asyncValidator=null}},{key:"markAsTouched",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.touched=!0,this._parent&&!e.onlySelf&&this._parent.markAsTouched(e)}},{key:"markAllAsTouched",value:function(){this.markAsTouched({onlySelf:!0}),this._forEachChild(function(e){return e.markAllAsTouched()})}},{key:"markAsUntouched",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.touched=!1,this._pendingTouched=!1,this._forEachChild(function(e){e.markAsUntouched({onlySelf:!0})}),this._parent&&!e.onlySelf&&this._parent._updateTouched(e)}},{key:"markAsDirty",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.pristine=!1,this._parent&&!e.onlySelf&&this._parent.markAsDirty(e)}},{key:"markAsPristine",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.pristine=!0,this._pendingDirty=!1,this._forEachChild(function(e){e.markAsPristine({onlySelf:!0})}),this._parent&&!e.onlySelf&&this._parent._updatePristine(e)}},{key:"markAsPending",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.status=le,!1!==e.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!e.onlySelf&&this._parent.markAsPending(e)}},{key:"disable",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this._parentMarkedDirty(e.onlySelf);this.status=ce,this.errors=null,this._forEachChild(function(t){t.disable(Object.assign(Object.assign({},e),{onlySelf:!0}))}),this._updateValue(),!1!==e.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign(Object.assign({},e),{skipPristineCheck:t})),this._onDisabledChange.forEach(function(e){return e(!0)})}},{key:"enable",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this._parentMarkedDirty(e.onlySelf);this.status=ae,this._forEachChild(function(t){t.enable(Object.assign(Object.assign({},e),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:e.emitEvent}),this._updateAncestors(Object.assign(Object.assign({},e),{skipPristineCheck:t})),this._onDisabledChange.forEach(function(e){return e(!1)})}},{key:"_updateAncestors",value:function(e){this._parent&&!e.onlySelf&&(this._parent.updateValueAndValidity(e),e.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}},{key:"setParent",value:function(e){this._parent=e}},{key:"updateValueAndValidity",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),this.status!==ae&&this.status!==le||this._runAsyncValidator(e.emitEvent)),!1!==e.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!e.onlySelf&&this._parent.updateValueAndValidity(e)}},{key:"_updateTreeValidity",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{emitEvent:!0};this._forEachChild(function(t){return t._updateTreeValidity(e)}),this.updateValueAndValidity({onlySelf:!0,emitEvent:e.emitEvent})}},{key:"_setInitialStatus",value:function(){this.status=this._allControlsDisabled()?ce:ae}},{key:"_runValidator",value:function(){return this.validator?this.validator(this):null}},{key:"_runAsyncValidator",value:function(e){var t=this;if(this.asyncValidator){this.status=le,this._hasOwnPendingAsyncValidator=!0;var n=E(this.asyncValidator(this));this._asyncValidationSubscription=n.subscribe(function(n){t._hasOwnPendingAsyncValidator=!1,t.setErrors(n,{emitEvent:e})})}}},{key:"_cancelExistingSubscription",value:function(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}},{key:"setErrors",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.errors=e,this._updateControlsErrors(!1!==t.emitEvent)}},{key:"get",value:function(e){return function(e,t,n){if(null==t)return null;if(Array.isArray(t)||(t=t.split(".")),Array.isArray(t)&&0===t.length)return null;var i=e;return t.forEach(function(e){i=i instanceof ve?i.controls.hasOwnProperty(e)?i.controls[e]:null:i instanceof ye&&i.at(e)||null}),i}(this,e)}},{key:"getError",value:function(e,t){var n=t?this.get(t):this;return n&&n.errors?n.errors[e]:null}},{key:"hasError",value:function(e,t){return!!this.getError(e,t)}},{key:"root",get:function(){for(var e=this;e._parent;)e=e._parent;return e}},{key:"_updateControlsErrors",value:function(e){this.status=this._calculateStatus(),e&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(e)}},{key:"_initObservables",value:function(){this.valueChanges=new u.vpe,this.statusChanges=new u.vpe}},{key:"_calculateStatus",value:function(){return this._allControlsDisabled()?ce:this.errors?se:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(le)?le:this._anyControlsHaveStatus(se)?se:ae}},{key:"_anyControlsHaveStatus",value:function(e){return this._anyControls(function(t){return t.status===e})}},{key:"_anyControlsDirty",value:function(){return this._anyControls(function(e){return e.dirty})}},{key:"_anyControlsTouched",value:function(){return this._anyControls(function(e){return e.touched})}},{key:"_updatePristine",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.pristine=!this._anyControlsDirty(),this._parent&&!e.onlySelf&&this._parent._updatePristine(e)}},{key:"_updateTouched",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.touched=this._anyControlsTouched(),this._parent&&!e.onlySelf&&this._parent._updateTouched(e)}},{key:"_isBoxedValue",value:function(e){return"object"==typeof e&&null!==e&&2===Object.keys(e).length&&"value"in e&&"disabled"in e}},{key:"_registerOnCollectionChange",value:function(e){this._onCollectionChange=e}},{key:"_setUpdateStrategy",value:function(e){fe(e)&&null!=e.updateOn&&(this._updateOn=e.updateOn)}},{key:"_parentMarkedDirty",value:function(e){return!e&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}}]),e}(),ge=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(){var e,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,r=arguments.length>1?arguments[1]:void 0,o=arguments.length>2?arguments[2]:void 0;return(0,l.Z)(this,n),(e=t.call(this,ue(r),he(o,r)))._onChange=[],e._applyFormState(i),e._setUpdateStrategy(r),e._initObservables(),e.updateValueAndValidity({onlySelf:!0,emitEvent:!!e.asyncValidator}),e}return(0,c.Z)(n,[{key:"setValue",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.value=this._pendingValue=e,this._onChange.length&&!1!==n.emitModelToViewChange&&this._onChange.forEach(function(e){return e(t.value,!1!==n.emitViewToModelChange)}),this.updateValueAndValidity(n)}},{key:"patchValue",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.setValue(e,t)}},{key:"reset",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._applyFormState(e),this.markAsPristine(t),this.markAsUntouched(t),this.setValue(this.value,t),this._pendingChange=!1}},{key:"_updateValue",value:function(){}},{key:"_anyControls",value:function(e){return!1}},{key:"_allControlsDisabled",value:function(){return this.disabled}},{key:"registerOnChange",value:function(e){this._onChange.push(e)}},{key:"_unregisterOnChange",value:function(e){oe(this._onChange,e)}},{key:"registerOnDisabledChange",value:function(e){this._onDisabledChange.push(e)}},{key:"_unregisterOnDisabledChange",value:function(e){oe(this._onDisabledChange,e)}},{key:"_forEachChild",value:function(e){}},{key:"_syncPendingControls",value:function(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}},{key:"_applyFormState",value:function(e){this._isBoxedValue(e)?(this.value=this._pendingValue=e.value,e.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=e}}]),n}(me),ve=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r){var o;return(0,l.Z)(this,n),(o=t.call(this,ue(i),he(r,i))).controls=e,o._initObservables(),o._setUpdateStrategy(i),o._setUpControls(),o.updateValueAndValidity({onlySelf:!0,emitEvent:!!o.asyncValidator}),o}return(0,c.Z)(n,[{key:"registerControl",value:function(e,t){return this.controls[e]?this.controls[e]:(this.controls[e]=t,t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange),t)}},{key:"addControl",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.registerControl(e,t),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}},{key:"removeControl",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.controls[e]&&this.controls[e]._registerOnCollectionChange(function(){}),delete this.controls[e],this.updateValueAndValidity({emitEvent:t.emitEvent}),this._onCollectionChange()}},{key:"setControl",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.controls[e]&&this.controls[e]._registerOnCollectionChange(function(){}),delete this.controls[e],t&&this.registerControl(e,t),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}},{key:"contains",value:function(e){return this.controls.hasOwnProperty(e)&&this.controls[e].enabled}},{key:"setValue",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._checkAllValuesPresent(e),Object.keys(e).forEach(function(i){t._throwIfControlMissing(i),t.controls[i].setValue(e[i],{onlySelf:!0,emitEvent:n.emitEvent})}),this.updateValueAndValidity(n)}},{key:"patchValue",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};null!=e&&(Object.keys(e).forEach(function(i){t.controls[i]&&t.controls[i].patchValue(e[i],{onlySelf:!0,emitEvent:n.emitEvent})}),this.updateValueAndValidity(n))}},{key:"reset",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._forEachChild(function(n,i){n.reset(e[i],{onlySelf:!0,emitEvent:t.emitEvent})}),this._updatePristine(t),this._updateTouched(t),this.updateValueAndValidity(t)}},{key:"getRawValue",value:function(){return this._reduceChildren({},function(e,t,n){return e[n]=t instanceof ge?t.value:t.getRawValue(),e})}},{key:"_syncPendingControls",value:function(){var e=this._reduceChildren(!1,function(e,t){return!!t._syncPendingControls()||e});return e&&this.updateValueAndValidity({onlySelf:!0}),e}},{key:"_throwIfControlMissing",value:function(e){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[e])throw new Error("Cannot find form control with name: ".concat(e,"."))}},{key:"_forEachChild",value:function(e){var t=this;Object.keys(this.controls).forEach(function(n){var i=t.controls[n];i&&e(i,n)})}},{key:"_setUpControls",value:function(){var e=this;this._forEachChild(function(t){t.setParent(e),t._registerOnCollectionChange(e._onCollectionChange)})}},{key:"_updateValue",value:function(){this.value=this._reduceValue()}},{key:"_anyControls",value:function(e){for(var t=0,n=Object.keys(this.controls);t0||this.disabled}},{key:"_checkAllValuesPresent",value:function(e){this._forEachChild(function(t,n){if(void 0===e[n])throw new Error("Must supply a value for form control with name: '".concat(n,"'."))})}}]),n}(me),ye=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r){var o;return(0,l.Z)(this,n),(o=t.call(this,ue(i),he(r,i))).controls=e,o._initObservables(),o._setUpdateStrategy(i),o._setUpControls(),o.updateValueAndValidity({onlySelf:!0,emitEvent:!!o.asyncValidator}),o}return(0,c.Z)(n,[{key:"at",value:function(e){return this.controls[e]}},{key:"push",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.controls.push(e),this._registerControl(e),this.updateValueAndValidity({emitEvent:t.emitEvent}),this._onCollectionChange()}},{key:"insert",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.controls.splice(e,0,t),this._registerControl(t),this.updateValueAndValidity({emitEvent:n.emitEvent})}},{key:"removeAt",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.controls[e]&&this.controls[e]._registerOnCollectionChange(function(){}),this.controls.splice(e,1),this.updateValueAndValidity({emitEvent:t.emitEvent})}},{key:"setControl",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.controls[e]&&this.controls[e]._registerOnCollectionChange(function(){}),this.controls.splice(e,1),t&&(this.controls.splice(e,0,t),this._registerControl(t)),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}},{key:"length",get:function(){return this.controls.length}},{key:"setValue",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._checkAllValuesPresent(e),e.forEach(function(e,i){t._throwIfControlMissing(i),t.at(i).setValue(e,{onlySelf:!0,emitEvent:n.emitEvent})}),this.updateValueAndValidity(n)}},{key:"patchValue",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};null!=e&&(e.forEach(function(e,i){t.at(i)&&t.at(i).patchValue(e,{onlySelf:!0,emitEvent:n.emitEvent})}),this.updateValueAndValidity(n))}},{key:"reset",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._forEachChild(function(n,i){n.reset(e[i],{onlySelf:!0,emitEvent:t.emitEvent})}),this._updatePristine(t),this._updateTouched(t),this.updateValueAndValidity(t)}},{key:"getRawValue",value:function(){return this.controls.map(function(e){return e instanceof ge?e.value:e.getRawValue()})}},{key:"clear",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.controls.length<1||(this._forEachChild(function(e){return e._registerOnCollectionChange(function(){})}),this.controls.splice(0),this.updateValueAndValidity({emitEvent:e.emitEvent}))}},{key:"_syncPendingControls",value:function(){var e=this.controls.reduce(function(e,t){return!!t._syncPendingControls()||e},!1);return e&&this.updateValueAndValidity({onlySelf:!0}),e}},{key:"_throwIfControlMissing",value:function(e){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(e))throw new Error("Cannot find form control at index ".concat(e))}},{key:"_forEachChild",value:function(e){this.controls.forEach(function(t,n){e(t,n)})}},{key:"_updateValue",value:function(){var e=this;this.value=this.controls.filter(function(t){return t.enabled||e.disabled}).map(function(e){return e.value})}},{key:"_anyControls",value:function(e){return this.controls.some(function(t){return t.enabled&&e(t)})}},{key:"_setUpControls",value:function(){var e=this;this._forEachChild(function(t){return e._registerControl(t)})}},{key:"_checkAllValuesPresent",value:function(e){this._forEachChild(function(t,n){if(void 0===e[n])throw new Error("Must supply a value for form control at index: ".concat(n,"."))})}},{key:"_allControlsDisabled",value:function(){var e,t=(0,r.Z)(this.controls);try{for(t.s();!(e=t.n()).done;)if(e.value.enabled)return!1}catch(n){t.e(n)}finally{t.f()}return this.controls.length>0||this.disabled}},{key:"_registerControl",value:function(e){e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange)}}]),n}(me),_e={provide:U,useExisting:(0,u.Gpc)(function(){return we})},be=function(){return Promise.resolve(null)}(),we=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i){var r;return(0,l.Z)(this,n),(r=t.call(this)).submitted=!1,r._directives=[],r.ngSubmit=new u.vpe,r.form=new ve({},D(e),L(i)),r}return(0,c.Z)(n,[{key:"ngAfterViewInit",value:function(){this._setUpdateStrategy()}},{key:"formDirective",get:function(){return this}},{key:"control",get:function(){return this.form}},{key:"path",get:function(){return[]}},{key:"controls",get:function(){return this.form.controls}},{key:"addControl",value:function(e){var t=this;be.then(function(){var n=t._findContainer(e.path);e.control=n.registerControl(e.name,e.control),V(e.control,e),e.control.updateValueAndValidity({emitEvent:!1}),t._directives.push(e)})}},{key:"getControl",value:function(e){return this.form.get(e.path)}},{key:"removeControl",value:function(e){var t=this;be.then(function(){var n=t._findContainer(e.path);n&&n.removeControl(e.name),oe(t._directives,e)})}},{key:"addFormGroup",value:function(e){var t=this;be.then(function(){var n=t._findContainer(e.path),i=new ve({});te(i,e),n.registerControl(e.name,i),i.updateValueAndValidity({emitEvent:!1})})}},{key:"removeFormGroup",value:function(e){var t=this;be.then(function(){var n=t._findContainer(e.path);n&&n.removeControl(e.name)})}},{key:"getFormGroup",value:function(e){return this.form.get(e.path)}},{key:"updateModel",value:function(e,t){var n=this;be.then(function(){n.form.get(e.path).setValue(t)})}},{key:"setValue",value:function(e){this.control.setValue(e)}},{key:"onSubmit",value:function(e){return this.submitted=!0,ie(this.form,this._directives),this.ngSubmit.emit(e),!1}},{key:"onReset",value:function(){this.resetForm()}},{key:"resetForm",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0;this.form.reset(e),this.submitted=!1}},{key:"_setUpdateStrategy",value:function(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}},{key:"_findContainer",value:function(e){return e.pop(),e.length?this.form.get(e):this.form}}]),n}(U);return e.\u0275fac=function(t){return new(t||e)(u.Y36(x,10),u.Y36(C,10))},e.\u0275dir=u.lG2({type:e,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(e,t){1&e&&u.NdJ("submit",function(e){return t.onSubmit(e)})("reset",function(){return t.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[u._Bn([_e]),u.qOj]}),e}(),Se={provide:H,useExisting:(0,u.Gpc)(function(){return Ce})},xe=function(){return Promise.resolve(null)}(),Ce=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,r,o,a){var s;return(0,l.Z)(this,n),(s=t.call(this)).control=new ge,s._registered=!1,s.update=new u.vpe,s._parent=e,s._setValidators(r),s._setAsyncValidators(o),s.valueAccessor=re((0,i.Z)(s),a),s}return(0,c.Z)(n,[{key:"ngOnChanges",value:function(e){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in e&&this._updateDisabled(e),ne(e,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}},{key:"ngOnDestroy",value:function(){this.formDirective&&this.formDirective.removeControl(this)}},{key:"path",get:function(){return this._parent?W(this.name,this._parent):[this.name]}},{key:"formDirective",get:function(){return this._parent?this._parent.formDirective:null}},{key:"viewToModelUpdate",value:function(e){this.viewModel=e,this.update.emit(e)}},{key:"_setUpControl",value:function(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}},{key:"_setUpdateStrategy",value:function(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}},{key:"_isStandalone",value:function(){return!this._parent||!(!this.options||!this.options.standalone)}},{key:"_setUpStandalone",value:function(){V(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})}},{key:"_checkForErrors",value:function(){this._isStandalone()||this._checkParentType(),this._checkName()}},{key:"_checkParentType",value:function(){}},{key:"_checkName",value:function(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()}},{key:"_updateValue",value:function(e){var t=this;xe.then(function(){t.control.setValue(e,{emitViewToModelChange:!1})})}},{key:"_updateDisabled",value:function(e){var t=this,n=e.isDisabled.currentValue,i=""===n||n&&"false"!==n;xe.then(function(){i&&!t.control.disabled?t.control.disable():!i&&t.control.disabled&&t.control.enable()})}}]),n}(H);return e.\u0275fac=function(t){return new(t||e)(u.Y36(U,9),u.Y36(x,10),u.Y36(C,10),u.Y36(v,10))},e.\u0275dir=u.lG2({type:e,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[u._Bn([Se]),u.qOj,u.TTD]}),e}(),ke=function(){var e=function e(){(0,l.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=u.lG2({type:e,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]}),e}(),Te={provide:v,useExisting:(0,u.Gpc)(function(){return Ae}),multi:!0},Ae=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(){return(0,l.Z)(this,n),t.apply(this,arguments)}return(0,c.Z)(n,[{key:"writeValue",value:function(e){this.setProperty("value",null==e?"":e)}},{key:"registerOnChange",value:function(e){this.onChange=function(t){e(""==t?null:parseFloat(t))}}}]),n}(g);return e.\u0275fac=function(){var t;return function(n){return(t||(t=u.n5z(e)))(n||e)}}(),e.\u0275dir=u.lG2({type:e,selectors:[["input","type","number","formControlName",""],["input","type","number","formControl",""],["input","type","number","ngModel",""]],hostBindings:function(e,t){1&e&&u.NdJ("input",function(e){return t.onChange(e.target.value)})("blur",function(){return t.onTouched()})},features:[u._Bn([Te]),u.qOj]}),e}(),Ze=function(){var e=function e(){(0,l.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=u.oAB({type:e}),e.\u0275inj=u.cJS({}),e}(),Me=new u.OlP("NgModelWithFormControlWarning"),Oe={provide:U,useExisting:(0,u.Gpc)(function(){return Ee})},Ee=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i){var r;return(0,l.Z)(this,n),(r=t.call(this)).validators=e,r.asyncValidators=i,r.submitted=!1,r._onCollectionChange=function(){return r._updateDomValue()},r.directives=[],r.form=null,r.ngSubmit=new u.vpe,r._setValidators(e),r._setAsyncValidators(i),r}return(0,c.Z)(n,[{key:"ngOnChanges",value:function(e){this._checkFormPresent(),e.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}},{key:"ngOnDestroy",value:function(){this.form&&($(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(function(){}))}},{key:"formDirective",get:function(){return this}},{key:"control",get:function(){return this.form}},{key:"path",get:function(){return[]}},{key:"addControl",value:function(e){var t=this.form.get(e.path);return V(t,e),t.updateValueAndValidity({emitEvent:!1}),this.directives.push(e),t}},{key:"getControl",value:function(e){return this.form.get(e.path)}},{key:"removeControl",value:function(e){Q(e.control||null,e),oe(this.directives,e)}},{key:"addFormGroup",value:function(e){this._setUpFormContainer(e)}},{key:"removeFormGroup",value:function(e){this._cleanUpFormContainer(e)}},{key:"getFormGroup",value:function(e){return this.form.get(e.path)}},{key:"addFormArray",value:function(e){this._setUpFormContainer(e)}},{key:"removeFormArray",value:function(e){this._cleanUpFormContainer(e)}},{key:"getFormArray",value:function(e){return this.form.get(e.path)}},{key:"updateModel",value:function(e,t){this.form.get(e.path).setValue(t)}},{key:"onSubmit",value:function(e){return this.submitted=!0,ie(this.form,this.directives),this.ngSubmit.emit(e),!1}},{key:"onReset",value:function(){this.resetForm()}},{key:"resetForm",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0;this.form.reset(e),this.submitted=!1}},{key:"_updateDomValue",value:function(){var e=this;this.directives.forEach(function(t){var n=t.control,i=e.form.get(t.path);n!==i&&(Q(n||null,t),i instanceof ge&&(V(i,t),t.control=i))}),this.form._updateTreeValidity({emitEvent:!1})}},{key:"_setUpFormContainer",value:function(e){var t=this.form.get(e.path);te(t,e),t.updateValueAndValidity({emitEvent:!1})}},{key:"_cleanUpFormContainer",value:function(e){if(this.form){var t=this.form.get(e.path);t&&function(e,t){return $(e,t)}(t,e)&&t.updateValueAndValidity({emitEvent:!1})}}},{key:"_updateRegistrations",value:function(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(function(){})}},{key:"_updateValidators",value:function(){K(this.form,this),this._oldForm&&$(this._oldForm,this)}},{key:"_checkFormPresent",value:function(){}}]),n}(U);return e.\u0275fac=function(t){return new(t||e)(u.Y36(x,10),u.Y36(C,10))},e.\u0275dir=u.lG2({type:e,selectors:[["","formGroup",""]],hostBindings:function(e,t){1&e&&u.NdJ("submit",function(e){return t.onSubmit(e)})("reset",function(){return t.onReset()})},inputs:{form:["formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[u._Bn([Oe]),u.qOj,u.TTD]}),e}(),Pe={provide:H,useExisting:(0,u.Gpc)(function(){return Ie})},Ie=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,r,o,a,s){var c;return(0,l.Z)(this,n),(c=t.call(this))._ngModelWarningConfig=s,c._added=!1,c.update=new u.vpe,c._ngModelWarningSent=!1,c._parent=e,c._setValidators(r),c._setAsyncValidators(o),c.valueAccessor=re((0,i.Z)(c),a),c}return(0,c.Z)(n,[{key:"isDisabled",set:function(e){}},{key:"ngOnChanges",value:function(e){this._added||this._setUpControl(),ne(e,this.viewModel)&&(this.viewModel=this.model,this.formDirective.updateModel(this,this.model))}},{key:"ngOnDestroy",value:function(){this.formDirective&&this.formDirective.removeControl(this)}},{key:"viewToModelUpdate",value:function(e){this.viewModel=e,this.update.emit(e)}},{key:"path",get:function(){return W(null==this.name?this.name:this.name.toString(),this._parent)}},{key:"formDirective",get:function(){return this._parent?this._parent.formDirective:null}},{key:"_checkParentType",value:function(){}},{key:"_setUpControl",value:function(){this._checkParentType(),this.control=this.formDirective.addControl(this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this._added=!0}}]),n}(H);return e.\u0275fac=function(t){return new(t||e)(u.Y36(U,13),u.Y36(x,10),u.Y36(C,10),u.Y36(v,10),u.Y36(Me,8))},e.\u0275dir=u.lG2({type:e,selectors:[["","formControlName",""]],inputs:{isDisabled:["disabled","isDisabled"],name:["formControlName","name"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},features:[u._Bn([Pe]),u.qOj,u.TTD]}),e._ngModelWarningSentOnce=!1,e}(),qe={provide:x,useExisting:(0,u.Gpc)(function(){return De}),multi:!0},Ne={provide:x,useExisting:(0,u.Gpc)(function(){return Re}),multi:!0},De=function(){var e=function(){function e(){(0,l.Z)(this,e),this._required=!1}return(0,c.Z)(e,[{key:"required",get:function(){return this._required},set:function(e){this._required=null!=e&&!1!==e&&"false"!=="".concat(e),this._onChange&&this._onChange()}},{key:"validate",value:function(e){return this.required?A(e):null}},{key:"registerOnValidatorChange",value:function(e){this._onChange=e}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=u.lG2({type:e,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(e,t){2&e&&u.uIk("required",t.required?"":null)},inputs:{required:"required"},features:[u._Bn([qe])]}),e}(),Re=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(){return(0,l.Z)(this,n),t.apply(this,arguments)}return(0,c.Z)(n,[{key:"validate",value:function(e){return this.required?Z(e):null}}]),n}(De);return e.\u0275fac=function(){var t;return function(n){return(t||(t=u.n5z(e)))(n||e)}}(),e.\u0275dir=u.lG2({type:e,selectors:[["input","type","checkbox","required","","formControlName",""],["input","type","checkbox","required","","formControl",""],["input","type","checkbox","required","","ngModel",""]],hostVars:1,hostBindings:function(e,t){2&e&&u.uIk("required",t.required?"":null)},features:[u._Bn([Ne]),u.qOj]}),e}(),Le=function(){var e=function e(){(0,l.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=u.oAB({type:e}),e.\u0275inj=u.cJS({imports:[[Ze]]}),e}(),Fe=function(){var e=function e(){(0,l.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=u.oAB({type:e}),e.\u0275inj=u.cJS({imports:[Le]}),e}(),Be=function(){var e=function(){function e(){(0,l.Z)(this,e)}return(0,c.Z)(e,null,[{key:"withConfig",value:function(t){return{ngModule:e,providers:[{provide:Me,useValue:t.warnOnNgModelWithFormControl}]}}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=u.oAB({type:e}),e.\u0275inj=u.cJS({imports:[Le]}),e}();function je(e){return void 0!==e.asyncValidators||void 0!==e.validators||void 0!==e.updateOn}var ze=function(){var e=function(){function e(){(0,l.Z)(this,e)}return(0,c.Z)(e,[{key:"group",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=this._reduceControls(e),i=null,r=null,o=void 0;return null!=t&&(je(t)?(i=null!=t.validators?t.validators:null,r=null!=t.asyncValidators?t.asyncValidators:null,o=null!=t.updateOn?t.updateOn:void 0):(i=null!=t.validator?t.validator:null,r=null!=t.asyncValidator?t.asyncValidator:null)),new ve(n,{asyncValidators:r,updateOn:o,validators:i})}},{key:"control",value:function(e,t,n){return new ge(e,t,n)}},{key:"array",value:function(e,t,n){var i=this,r=e.map(function(e){return i._createControl(e)});return new ye(r,t,n)}},{key:"_reduceControls",value:function(e){var t=this,n={};return Object.keys(e).forEach(function(i){n[i]=t._createControl(e[i])}),n}},{key:"_createControl",value:function(e){return e instanceof ge||e instanceof ve||e instanceof ye?e:Array.isArray(e)?this.control(e[0],e.length>1?e[1]:null,e.length>2?e[2]:null):this.control(e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=(0,u.Yz7)({factory:function(){return new e},token:e,providedIn:Be}),e}()},59412:function(e,t,n){"use strict";n.d(t,{yN:function(){return C},mZ:function(){return k},rD:function(){return N},K7:function(){return ie},HF:function(){return $},Y2:function(){return W},BQ:function(){return Z},X2:function(){return D},uc:function(){return F},Nv:function(){return re},ey:function(){return le},Ng:function(){return de},nP:function(){return X},us:function(){return K},wG:function(){return V},si:function(){return Q},IR:function(){return Y},CB:function(){return ce},jH:function(){return ue},pj:function(){return O},Kr:function(){return E},Id:function(){return M},FD:function(){return I},dB:function(){return q},sb:function(){return P},E0:function(){return R}}),n(3574),n(51751),n(12558);var i=n(49843),r=n(37859),o=n(11254),a=n(61680),s=n(37602),l=n(6517),c=n(8392),u=new s.GfV("12.1.4"),d=n(40098),h=n(78081),p=n(68707),f=n(89797),m=n(15427),g=n(57682),v=n(38480),y=n(32819),_=["*",[["mat-option"],["ng-container"]]],b=["*","mat-option, ng-container"];function w(e,t){if(1&e&&s._UZ(0,"mat-pseudo-checkbox",4),2&e){var n=s.oxw();s.Q6J("state",n.selected?"checked":"unchecked")("disabled",n.disabled)}}function S(e,t){if(1&e&&(s.TgZ(0,"span",5),s._uU(1),s.qZA()),2&e){var n=s.oxw();s.xp6(1),s.hij("(",n.group.label,")")}}var x=["*"],C=function(){var e=function e(){(0,a.Z)(this,e)};return e.STANDARD_CURVE="cubic-bezier(0.4,0.0,0.2,1)",e.DECELERATION_CURVE="cubic-bezier(0.0,0.0,0.2,1)",e.ACCELERATION_CURVE="cubic-bezier(0.4,0.0,1,1)",e.SHARP_CURVE="cubic-bezier(0.4,0.0,0.6,1)",e}(),k=function(){var e=function e(){(0,a.Z)(this,e)};return e.COMPLEX="375ms",e.ENTERING="225ms",e.EXITING="195ms",e}(),T=new s.GfV("12.1.4"),A=new s.OlP("mat-sanity-checks",{providedIn:"root",factory:function(){return!0}}),Z=function(){var e=function(){function e(t,n,i){(0,a.Z)(this,e),this._hasDoneGlobalChecks=!1,this._document=i,t._applyBodyHighContrastModeCssClasses(),this._sanityChecks=n,this._hasDoneGlobalChecks||(this._checkDoctypeIsDefined(),this._checkThemeIsPresent(),this._checkCdkVersionMatch(),this._hasDoneGlobalChecks=!0)}return(0,o.Z)(e,[{key:"_getWindow",value:function(){var e=this._document.defaultView||window;return"object"==typeof e&&e?e:null}},{key:"_checksAreEnabled",value:function(){return(0,s.X6Q)()&&!this._isTestEnv()}},{key:"_isTestEnv",value:function(){var e=this._getWindow();return e&&(e.__karma__||e.jasmine)}},{key:"_checkDoctypeIsDefined",value:function(){this._checksAreEnabled()&&(!0===this._sanityChecks||this._sanityChecks.doctype)&&!this._document.doctype&&console.warn("Current document does not have a doctype. This may cause some Angular Material components not to behave as expected.")}},{key:"_checkThemeIsPresent",value:function(){if(this._checksAreEnabled()&&!1!==this._sanityChecks&&this._sanityChecks.theme&&this._document.body&&"function"==typeof getComputedStyle){var e=this._document.createElement("div");e.classList.add("mat-theme-loaded-marker"),this._document.body.appendChild(e);var t=getComputedStyle(e);t&&"none"!==t.display&&console.warn("Could not find Angular Material core theme. Most Material components may not work as expected. For more info refer to the theming guide: https://material.angular.io/guide/theming"),this._document.body.removeChild(e)}}},{key:"_checkCdkVersionMatch",value:function(){this._checksAreEnabled()&&(!0===this._sanityChecks||this._sanityChecks.version)&&T.full!==u.full&&console.warn("The Angular Material version ("+T.full+") does not match the Angular CDK version ("+u.full+").\nPlease ensure the versions of these two packages exactly match.")}}]),e}();return e.\u0275fac=function(t){return new(t||e)(s.LFG(l.qm),s.LFG(A,8),s.LFG(d.K0))},e.\u0275mod=s.oAB({type:e}),e.\u0275inj=s.cJS({imports:[[c.vT],c.vT]}),e}();function M(e){return function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(){var e;(0,a.Z)(this,n);for(var i=arguments.length,r=new Array(i),o=0;o1&&void 0!==arguments[1]?arguments[1]:0;return function(e){(0,i.Z)(s,e);var n=(0,r.Z)(s);function s(){var e;(0,a.Z)(this,s);for(var i=arguments.length,r=new Array(i),o=0;o2&&void 0!==arguments[2]?arguments[2]:"mat";e.changes.pipe((0,g.O)(e)).subscribe(function(e){var i=e.length;L(t,"".concat(n,"-2-line"),!1),L(t,"".concat(n,"-3-line"),!1),L(t,"".concat(n,"-multi-line"),!1),2===i||3===i?L(t,"".concat(n,"-").concat(i,"-line"),!0):i>3&&L(t,"".concat(n,"-multi-line"),!0)})}function L(e,t,n){var i=e.nativeElement.classList;n?i.add(t):i.remove(t)}var F=function(){var e=function e(){(0,a.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=s.oAB({type:e}),e.\u0275inj=s.cJS({imports:[[Z],Z]}),e}(),B=function(){function e(t,n,i){(0,a.Z)(this,e),this._renderer=t,this.element=n,this.config=i,this.state=3}return(0,o.Z)(e,[{key:"fadeOut",value:function(){this._renderer.fadeOutRipple(this)}}]),e}(),j={enterDuration:225,exitDuration:150},z=(0,m.i$)({passive:!0}),U=["mousedown","touchstart"],H=["mouseup","mouseleave","touchend","touchcancel"],Y=function(){function e(t,n,i,r){(0,a.Z)(this,e),this._target=t,this._ngZone=n,this._isPointerDown=!1,this._activeRipples=new Set,this._pointerUpEventsRegistered=!1,r.isBrowser&&(this._containerElement=(0,h.fI)(i))}return(0,o.Z)(e,[{key:"fadeInRipple",value:function(e,t){var n=this,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=this._containerRect=this._containerRect||this._containerElement.getBoundingClientRect(),o=Object.assign(Object.assign({},j),i.animation);i.centered&&(e=r.left+r.width/2,t=r.top+r.height/2);var a=i.radius||G(e,t,r),s=e-r.left,l=t-r.top,c=o.enterDuration,u=document.createElement("div");u.classList.add("mat-ripple-element"),u.style.left="".concat(s-a,"px"),u.style.top="".concat(l-a,"px"),u.style.height="".concat(2*a,"px"),u.style.width="".concat(2*a,"px"),null!=i.color&&(u.style.backgroundColor=i.color),u.style.transitionDuration="".concat(c,"ms"),this._containerElement.appendChild(u),J(u),u.style.transform="scale(1)";var d=new B(this,u,i);return d.state=0,this._activeRipples.add(d),i.persistent||(this._mostRecentTransientRipple=d),this._runTimeoutOutsideZone(function(){var e=d===n._mostRecentTransientRipple;d.state=1,i.persistent||e&&n._isPointerDown||d.fadeOut()},c),d}},{key:"fadeOutRipple",value:function(e){var t=this._activeRipples.delete(e);if(e===this._mostRecentTransientRipple&&(this._mostRecentTransientRipple=null),this._activeRipples.size||(this._containerRect=null),t){var n=e.element,i=Object.assign(Object.assign({},j),e.config.animation);n.style.transitionDuration="".concat(i.exitDuration,"ms"),n.style.opacity="0",e.state=2,this._runTimeoutOutsideZone(function(){e.state=3,n.parentNode.removeChild(n)},i.exitDuration)}}},{key:"fadeOutAll",value:function(){this._activeRipples.forEach(function(e){return e.fadeOut()})}},{key:"fadeOutAllNonPersistent",value:function(){this._activeRipples.forEach(function(e){e.config.persistent||e.fadeOut()})}},{key:"setupTriggerEvents",value:function(e){var t=(0,h.fI)(e);t&&t!==this._triggerElement&&(this._removeTriggerEvents(),this._triggerElement=t,this._registerEvents(U))}},{key:"handleEvent",value:function(e){"mousedown"===e.type?this._onMousedown(e):"touchstart"===e.type?this._onTouchStart(e):this._onPointerUp(),this._pointerUpEventsRegistered||(this._registerEvents(H),this._pointerUpEventsRegistered=!0)}},{key:"_onMousedown",value:function(e){var t=(0,l.X6)(e),n=this._lastTouchStartEvent&&Date.now()1&&void 0!==arguments[1]?arguments[1]:0;this._ngZone.runOutsideAngular(function(){return setTimeout(e,t)})}},{key:"_registerEvents",value:function(e){var t=this;this._ngZone.runOutsideAngular(function(){e.forEach(function(e){t._triggerElement.addEventListener(e,t,z)})})}},{key:"_removeTriggerEvents",value:function(){var e=this;this._triggerElement&&(U.forEach(function(t){e._triggerElement.removeEventListener(t,e,z)}),this._pointerUpEventsRegistered&&H.forEach(function(t){e._triggerElement.removeEventListener(t,e,z)}))}}]),e}();function J(e){window.getComputedStyle(e).getPropertyValue("opacity")}function G(e,t,n){var i=Math.max(Math.abs(e-n.left),Math.abs(e-n.right)),r=Math.max(Math.abs(t-n.top),Math.abs(t-n.bottom));return Math.sqrt(i*i+r*r)}var W=new s.OlP("mat-ripple-global-options"),V=function(){var e=function(){function e(t,n,i,r,o){(0,a.Z)(this,e),this._elementRef=t,this._animationMode=o,this.radius=0,this._disabled=!1,this._isInitialized=!1,this._globalOptions=r||{},this._rippleRenderer=new Y(this,n,t,i)}return(0,o.Z)(e,[{key:"disabled",get:function(){return this._disabled},set:function(e){e&&this.fadeOutAllNonPersistent(),this._disabled=e,this._setupTriggerEventsIfEnabled()}},{key:"trigger",get:function(){return this._trigger||this._elementRef.nativeElement},set:function(e){this._trigger=e,this._setupTriggerEventsIfEnabled()}},{key:"ngOnInit",value:function(){this._isInitialized=!0,this._setupTriggerEventsIfEnabled()}},{key:"ngOnDestroy",value:function(){this._rippleRenderer._removeTriggerEvents()}},{key:"fadeOutAll",value:function(){this._rippleRenderer.fadeOutAll()}},{key:"fadeOutAllNonPersistent",value:function(){this._rippleRenderer.fadeOutAllNonPersistent()}},{key:"rippleConfig",get:function(){return{centered:this.centered,radius:this.radius,color:this.color,animation:Object.assign(Object.assign(Object.assign({},this._globalOptions.animation),"NoopAnimations"===this._animationMode?{enterDuration:0,exitDuration:0}:{}),this.animation),terminateOnPointerUp:this._globalOptions.terminateOnPointerUp}}},{key:"rippleDisabled",get:function(){return this.disabled||!!this._globalOptions.disabled}},{key:"_setupTriggerEventsIfEnabled",value:function(){!this.disabled&&this._isInitialized&&this._rippleRenderer.setupTriggerEvents(this.trigger)}},{key:"launch",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2?arguments[2]:void 0;return"number"==typeof e?this._rippleRenderer.fadeInRipple(e,t,Object.assign(Object.assign({},this.rippleConfig),n)):this._rippleRenderer.fadeInRipple(0,0,Object.assign(Object.assign({},this.rippleConfig),e))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(s.Y36(s.SBq),s.Y36(s.R0b),s.Y36(m.t4),s.Y36(W,8),s.Y36(v.Qb,8))},e.\u0275dir=s.lG2({type:e,selectors:[["","mat-ripple",""],["","matRipple",""]],hostAttrs:[1,"mat-ripple"],hostVars:2,hostBindings:function(e,t){2&e&&s.ekj("mat-ripple-unbounded",t.unbounded)},inputs:{radius:["matRippleRadius","radius"],disabled:["matRippleDisabled","disabled"],trigger:["matRippleTrigger","trigger"],color:["matRippleColor","color"],unbounded:["matRippleUnbounded","unbounded"],centered:["matRippleCentered","centered"],animation:["matRippleAnimation","animation"]},exportAs:["matRipple"]}),e}(),Q=function(){var e=function e(){(0,a.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=s.oAB({type:e}),e.\u0275inj=s.cJS({imports:[[Z,m.ud],Z]}),e}(),X=function(){var e=function e(t){(0,a.Z)(this,e),this._animationMode=t,this.state="unchecked",this.disabled=!1};return e.\u0275fac=function(t){return new(t||e)(s.Y36(v.Qb,8))},e.\u0275cmp=s.Xpm({type:e,selectors:[["mat-pseudo-checkbox"]],hostAttrs:[1,"mat-pseudo-checkbox"],hostVars:8,hostBindings:function(e,t){2&e&&s.ekj("mat-pseudo-checkbox-indeterminate","indeterminate"===t.state)("mat-pseudo-checkbox-checked","checked"===t.state)("mat-pseudo-checkbox-disabled",t.disabled)("_mat-animation-noopable","NoopAnimations"===t._animationMode)},inputs:{state:"state",disabled:"disabled"},decls:0,vars:0,template:function(e,t){},styles:['.mat-pseudo-checkbox{width:16px;height:16px;border:2px solid;border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:"";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox.mat-pseudo-checkbox-indeterminate{border-color:transparent}._mat-animation-noopable.mat-pseudo-checkbox{transition:none;animation:none}._mat-animation-noopable.mat-pseudo-checkbox::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{top:5px;left:1px;width:10px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{top:2.4px;left:1px;width:8px;height:3px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}\n'],encapsulation:2,changeDetection:0}),e}(),K=function(){var e=function e(){(0,a.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=s.oAB({type:e}),e.\u0275inj=s.cJS({imports:[[Z]]}),e}(),$=new s.OlP("MAT_OPTION_PARENT_COMPONENT"),ee=M(function(){return function e(){(0,a.Z)(this,e)}}()),te=0,ne=function(){var e=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e){var i,r;return(0,a.Z)(this,n),(i=t.call(this))._labelId="mat-optgroup-label-".concat(te++),i._inert=null!==(r=null==e?void 0:e.inertGroups)&&void 0!==r&&r,i}return n}(ee);return e.\u0275fac=function(t){return new(t||e)(s.Y36($,8))},e.\u0275dir=s.lG2({type:e,inputs:{label:"label"},features:[s.qOj]}),e}(),ie=new s.OlP("MatOptgroup"),re=function(){var e=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(){return(0,a.Z)(this,n),t.apply(this,arguments)}return n}(ne);return e.\u0275fac=function(){var t;return function(n){return(t||(t=s.n5z(e)))(n||e)}}(),e.\u0275cmp=s.Xpm({type:e,selectors:[["mat-optgroup"]],hostAttrs:[1,"mat-optgroup"],hostVars:5,hostBindings:function(e,t){2&e&&(s.uIk("role",t._inert?null:"group")("aria-disabled",t._inert?null:t.disabled.toString())("aria-labelledby",t._inert?null:t._labelId),s.ekj("mat-optgroup-disabled",t.disabled))},inputs:{disabled:"disabled"},exportAs:["matOptgroup"],features:[s._Bn([{provide:ie,useExisting:e}]),s.qOj],ngContentSelectors:b,decls:4,vars:2,consts:[["aria-hidden","true",1,"mat-optgroup-label",3,"id"]],template:function(e,t){1&e&&(s.F$t(_),s.TgZ(0,"span",0),s._uU(1),s.Hsn(2),s.qZA(),s.Hsn(3,1)),2&e&&(s.Q6J("id",t._labelId),s.xp6(1),s.hij("",t.label," "))},styles:[".mat-optgroup-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.mat-optgroup-label[disabled]{cursor:default}[dir=rtl] .mat-optgroup-label{text-align:right}.mat-optgroup-label .mat-icon{margin-right:16px;vertical-align:middle}.mat-optgroup-label .mat-icon svg{vertical-align:top}[dir=rtl] .mat-optgroup-label .mat-icon{margin-left:16px;margin-right:0}\n"],encapsulation:2,changeDetection:0}),e}(),oe=0,ae=function e(t){var n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];(0,a.Z)(this,e),this.source=t,this.isUserInput=n},se=function(){var e=function(){function e(t,n,i,r){(0,a.Z)(this,e),this._element=t,this._changeDetectorRef=n,this._parent=i,this.group=r,this._selected=!1,this._active=!1,this._disabled=!1,this._mostRecentViewValue="",this.id="mat-option-".concat(oe++),this.onSelectionChange=new s.vpe,this._stateChanges=new p.xQ}return(0,o.Z)(e,[{key:"multiple",get:function(){return this._parent&&this._parent.multiple}},{key:"selected",get:function(){return this._selected}},{key:"disabled",get:function(){return this.group&&this.group.disabled||this._disabled},set:function(e){this._disabled=(0,h.Ig)(e)}},{key:"disableRipple",get:function(){return this._parent&&this._parent.disableRipple}},{key:"active",get:function(){return this._active}},{key:"viewValue",get:function(){return(this._getHostElement().textContent||"").trim()}},{key:"select",value:function(){this._selected||(this._selected=!0,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())}},{key:"deselect",value:function(){this._selected&&(this._selected=!1,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())}},{key:"focus",value:function(e,t){var n=this._getHostElement();"function"==typeof n.focus&&n.focus(t)}},{key:"setActiveStyles",value:function(){this._active||(this._active=!0,this._changeDetectorRef.markForCheck())}},{key:"setInactiveStyles",value:function(){this._active&&(this._active=!1,this._changeDetectorRef.markForCheck())}},{key:"getLabel",value:function(){return this.viewValue}},{key:"_handleKeydown",value:function(e){e.keyCode!==y.K5&&e.keyCode!==y.L_||(0,y.Vb)(e)||(this._selectViaInteraction(),e.preventDefault())}},{key:"_selectViaInteraction",value:function(){this.disabled||(this._selected=!this.multiple||!this._selected,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent(!0))}},{key:"_getAriaSelected",value:function(){return this.selected||!this.multiple&&null}},{key:"_getTabIndex",value:function(){return this.disabled?"-1":"0"}},{key:"_getHostElement",value:function(){return this._element.nativeElement}},{key:"ngAfterViewChecked",value:function(){if(this._selected){var e=this.viewValue;e!==this._mostRecentViewValue&&(this._mostRecentViewValue=e,this._stateChanges.next())}}},{key:"ngOnDestroy",value:function(){this._stateChanges.complete()}},{key:"_emitSelectionChangeEvent",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.onSelectionChange.emit(new ae(this,e))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(s.Y36(s.SBq),s.Y36(s.sBO),s.Y36(void 0),s.Y36(ne))},e.\u0275dir=s.lG2({type:e,inputs:{id:"id",disabled:"disabled",value:"value"},outputs:{onSelectionChange:"onSelectionChange"}}),e}(),le=function(){var e=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e,i,r,o){return(0,a.Z)(this,n),t.call(this,e,i,r,o)}return n}(se);return e.\u0275fac=function(t){return new(t||e)(s.Y36(s.SBq),s.Y36(s.sBO),s.Y36($,8),s.Y36(ie,8))},e.\u0275cmp=s.Xpm({type:e,selectors:[["mat-option"]],hostAttrs:["role","option",1,"mat-option","mat-focus-indicator"],hostVars:12,hostBindings:function(e,t){1&e&&s.NdJ("click",function(){return t._selectViaInteraction()})("keydown",function(e){return t._handleKeydown(e)}),2&e&&(s.Ikx("id",t.id),s.uIk("tabindex",t._getTabIndex())("aria-selected",t._getAriaSelected())("aria-disabled",t.disabled.toString()),s.ekj("mat-selected",t.selected)("mat-option-multiple",t.multiple)("mat-active",t.active)("mat-option-disabled",t.disabled))},exportAs:["matOption"],features:[s.qOj],ngContentSelectors:x,decls:5,vars:4,consts:[["class","mat-option-pseudo-checkbox",3,"state","disabled",4,"ngIf"],[1,"mat-option-text"],["class","cdk-visually-hidden",4,"ngIf"],["mat-ripple","",1,"mat-option-ripple",3,"matRippleTrigger","matRippleDisabled"],[1,"mat-option-pseudo-checkbox",3,"state","disabled"],[1,"cdk-visually-hidden"]],template:function(e,t){1&e&&(s.F$t(),s.YNc(0,w,1,2,"mat-pseudo-checkbox",0),s.TgZ(1,"span",1),s.Hsn(2),s.qZA(),s.YNc(3,S,2,1,"span",2),s._UZ(4,"div",3)),2&e&&(s.Q6J("ngIf",t.multiple),s.xp6(3),s.Q6J("ngIf",t.group&&t.group._inert),s.xp6(1),s.Q6J("matRippleTrigger",t._getHostElement())("matRippleDisabled",t.disabled||t.disableRipple))},directives:[d.O5,V,X],styles:[".mat-option{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative;cursor:pointer;outline:none;display:flex;flex-direction:row;max-width:100%;box-sizing:border-box;align-items:center;-webkit-tap-highlight-color:transparent}.mat-option[disabled]{cursor:default}[dir=rtl] .mat-option{text-align:right}.mat-option .mat-icon{margin-right:16px;vertical-align:middle}.mat-option .mat-icon svg{vertical-align:top}[dir=rtl] .mat-option .mat-icon{margin-left:16px;margin-right:0}.mat-option[aria-disabled=true]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:32px}[dir=rtl] .mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:16px;padding-right:32px}.cdk-high-contrast-active .mat-option{margin:0 1px}.cdk-high-contrast-active .mat-option.mat-active{border:solid 1px currentColor;margin:0}.cdk-high-contrast-active .mat-option[aria-disabled=true]{opacity:.5}.mat-option-text{display:inline-block;flex-grow:1;overflow:hidden;text-overflow:ellipsis}.mat-option .mat-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-option-pseudo-checkbox{margin-right:8px}[dir=rtl] .mat-option-pseudo-checkbox{margin-left:8px;margin-right:0}\n"],encapsulation:2,changeDetection:0}),e}();function ce(e,t,n){if(n.length){for(var i=t.toArray(),r=n.toArray(),o=0,a=0;an+i?Math.max(0,e-i+t):n}var de=function(){var e=function e(){(0,a.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=s.oAB({type:e}),e.\u0275inj=s.cJS({imports:[[Q,d.ez,Z,K]]}),e}()},93386:function(e,t,n){"use strict";n.d(t,{d:function(){return l},t:function(){return c}});var i=n(61680),r=n(11254),o=n(78081),a=n(59412),s=n(37602),l=function(){var e=function(){function e(){(0,i.Z)(this,e),this._vertical=!1,this._inset=!1}return(0,r.Z)(e,[{key:"vertical",get:function(){return this._vertical},set:function(e){this._vertical=(0,o.Ig)(e)}},{key:"inset",get:function(){return this._inset},set:function(e){this._inset=(0,o.Ig)(e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=s.Xpm({type:e,selectors:[["mat-divider"]],hostAttrs:["role","separator",1,"mat-divider"],hostVars:7,hostBindings:function(e,t){2&e&&(s.uIk("aria-orientation",t.vertical?"vertical":"horizontal"),s.ekj("mat-divider-vertical",t.vertical)("mat-divider-horizontal",!t.vertical)("mat-divider-inset",t.inset))},inputs:{vertical:"vertical",inset:"inset"},decls:0,vars:0,template:function(e,t){},styles:[".mat-divider{display:block;margin:0;border-top-width:1px;border-top-style:solid}.mat-divider.mat-divider-vertical{border-top:0;border-right-width:1px;border-right-style:solid}.mat-divider.mat-divider-inset{margin-left:80px}[dir=rtl] .mat-divider.mat-divider-inset{margin-left:auto;margin-right:80px}\n"],encapsulation:2,changeDetection:0}),e}(),c=function(){var e=function e(){(0,i.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=s.oAB({type:e}),e.\u0275inj=s.cJS({imports:[[a.BQ],a.BQ]}),e}()},36410:function(e,t,n){"use strict";n.d(t,{G_:function(){return ee},TO:function(){return z},KE:function(){return te},Eo:function(){return H},lN:function(){return ne},hX:function(){return J},R9:function(){return Q}});var i=n(25801),r=n(11254),o=n(49843),a=n(37859),s=n(61680),l=n(96798),c=n(40098),u=n(37602),d=n(59412),h=n(78081),p=n(68707),f=n(55371),m=n(33090),g=n(57682),v=n(44213),y=n(48359),_=n(739),b=n(38480),w=n(8392),S=n(15427),x=["underline"],C=["connectionContainer"],k=["inputContainer"],T=["label"];function A(e,t){1&e&&(u.ynx(0),u.TgZ(1,"div",14),u._UZ(2,"div",15),u._UZ(3,"div",16),u._UZ(4,"div",17),u.qZA(),u.TgZ(5,"div",18),u._UZ(6,"div",15),u._UZ(7,"div",16),u._UZ(8,"div",17),u.qZA(),u.BQk())}function Z(e,t){1&e&&(u.TgZ(0,"div",19),u.Hsn(1,1),u.qZA())}function M(e,t){if(1&e&&(u.ynx(0),u.Hsn(1,2),u.TgZ(2,"span"),u._uU(3),u.qZA(),u.BQk()),2&e){var n=u.oxw(2);u.xp6(3),u.Oqu(n._control.placeholder)}}function O(e,t){1&e&&u.Hsn(0,3,["*ngSwitchCase","true"])}function E(e,t){1&e&&(u.TgZ(0,"span",23),u._uU(1," *"),u.qZA())}function P(e,t){if(1&e){var n=u.EpF();u.TgZ(0,"label",20,21),u.NdJ("cdkObserveContent",function(){return u.CHM(n),u.oxw().updateOutlineGap()}),u.YNc(2,M,4,1,"ng-container",12),u.YNc(3,O,1,0,"ng-content",12),u.YNc(4,E,2,0,"span",22),u.qZA()}if(2&e){var i=u.oxw();u.ekj("mat-empty",i._control.empty&&!i._shouldAlwaysFloat())("mat-form-field-empty",i._control.empty&&!i._shouldAlwaysFloat())("mat-accent","accent"==i.color)("mat-warn","warn"==i.color),u.Q6J("cdkObserveContentDisabled","outline"!=i.appearance)("id",i._labelId)("ngSwitch",i._hasLabel()),u.uIk("for",i._control.id)("aria-owns",i._control.id),u.xp6(2),u.Q6J("ngSwitchCase",!1),u.xp6(1),u.Q6J("ngSwitchCase",!0),u.xp6(1),u.Q6J("ngIf",!i.hideRequiredMarker&&i._control.required&&!i._control.disabled)}}function I(e,t){1&e&&(u.TgZ(0,"div",24),u.Hsn(1,4),u.qZA())}function q(e,t){if(1&e&&(u.TgZ(0,"div",25,26),u._UZ(2,"span",27),u.qZA()),2&e){var n=u.oxw();u.xp6(2),u.ekj("mat-accent","accent"==n.color)("mat-warn","warn"==n.color)}}function N(e,t){if(1&e&&(u.TgZ(0,"div"),u.Hsn(1,5),u.qZA()),2&e){var n=u.oxw();u.Q6J("@transitionMessages",n._subscriptAnimationState)}}function D(e,t){if(1&e&&(u.TgZ(0,"div",31),u._uU(1),u.qZA()),2&e){var n=u.oxw(2);u.Q6J("id",n._hintLabelId),u.xp6(1),u.Oqu(n.hintLabel)}}function R(e,t){if(1&e&&(u.TgZ(0,"div",28),u.YNc(1,D,2,2,"div",29),u.Hsn(2,6),u._UZ(3,"div",30),u.Hsn(4,7),u.qZA()),2&e){var n=u.oxw();u.Q6J("@transitionMessages",n._subscriptAnimationState),u.xp6(1),u.Q6J("ngIf",n.hintLabel)}}var L=["*",[["","matPrefix",""]],[["mat-placeholder"]],[["mat-label"]],[["","matSuffix",""]],[["mat-error"]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],F=["*","[matPrefix]","mat-placeholder","mat-label","[matSuffix]","mat-error","mat-hint:not([align='end'])","mat-hint[align='end']"],B=0,j=new u.OlP("MatError"),z=function(){var e=function e(t,n){(0,s.Z)(this,e),this.id="mat-error-".concat(B++),t||n.nativeElement.setAttribute("aria-live","polite")};return e.\u0275fac=function(t){return new(t||e)(u.$8M("aria-live"),u.Y36(u.SBq))},e.\u0275dir=u.lG2({type:e,selectors:[["mat-error"]],hostAttrs:["aria-atomic","true",1,"mat-error"],hostVars:1,hostBindings:function(e,t){2&e&&u.uIk("id",t.id)},inputs:{id:"id"},features:[u._Bn([{provide:j,useExisting:e}])]}),e}(),U={transitionMessages:(0,_.X$)("transitionMessages",[(0,_.SB)("enter",(0,_.oB)({opacity:1,transform:"translateY(0%)"})),(0,_.eR)("void => enter",[(0,_.oB)({opacity:0,transform:"translateY(-5px)"}),(0,_.jt)("300ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])},H=function(){var e=function e(){(0,s.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=u.lG2({type:e}),e}(),Y=new u.OlP("MatHint"),J=function(){var e=function e(){(0,s.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=u.lG2({type:e,selectors:[["mat-label"]]}),e}(),G=function(){var e=function e(){(0,s.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=u.lG2({type:e,selectors:[["mat-placeholder"]]}),e}(),W=new u.OlP("MatPrefix"),V=new u.OlP("MatSuffix"),Q=function(){var e=function e(){(0,s.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=u.lG2({type:e,selectors:[["","matSuffix",""]],features:[u._Bn([{provide:V,useExisting:e}])]}),e}(),X=0,K=(0,d.pj)(function(){return function e(t){(0,s.Z)(this,e),this._elementRef=t}}(),"primary"),$=new u.OlP("MAT_FORM_FIELD_DEFAULT_OPTIONS"),ee=new u.OlP("MatFormField"),te=function(){var e=function(e){(0,o.Z)(n,e);var t=(0,a.Z)(n);function n(e,i,r,o,a,l,c,u){var d;return(0,s.Z)(this,n),(d=t.call(this,e))._changeDetectorRef=i,d._dir=o,d._defaults=a,d._platform=l,d._ngZone=c,d._outlineGapCalculationNeededImmediately=!1,d._outlineGapCalculationNeededOnStable=!1,d._destroyed=new p.xQ,d._showAlwaysAnimate=!1,d._subscriptAnimationState="",d._hintLabel="",d._hintLabelId="mat-hint-".concat(X++),d._labelId="mat-form-field-label-".concat(X++),d.floatLabel=d._getDefaultFloatLabelState(),d._animationsEnabled="NoopAnimations"!==u,d.appearance=a&&a.appearance?a.appearance:"legacy",d._hideRequiredMarker=!(!a||null==a.hideRequiredMarker)&&a.hideRequiredMarker,d}return(0,r.Z)(n,[{key:"appearance",get:function(){return this._appearance},set:function(e){var t=this._appearance;this._appearance=e||this._defaults&&this._defaults.appearance||"legacy","outline"===this._appearance&&t!==e&&(this._outlineGapCalculationNeededOnStable=!0)}},{key:"hideRequiredMarker",get:function(){return this._hideRequiredMarker},set:function(e){this._hideRequiredMarker=(0,h.Ig)(e)}},{key:"_shouldAlwaysFloat",value:function(){return"always"===this.floatLabel&&!this._showAlwaysAnimate}},{key:"_canLabelFloat",value:function(){return"never"!==this.floatLabel}},{key:"hintLabel",get:function(){return this._hintLabel},set:function(e){this._hintLabel=e,this._processHints()}},{key:"floatLabel",get:function(){return"legacy"!==this.appearance&&"never"===this._floatLabel?"auto":this._floatLabel},set:function(e){e!==this._floatLabel&&(this._floatLabel=e||this._getDefaultFloatLabelState(),this._changeDetectorRef.markForCheck())}},{key:"_control",get:function(){return this._explicitFormFieldControl||this._controlNonStatic||this._controlStatic},set:function(e){this._explicitFormFieldControl=e}},{key:"getLabelId",value:function(){return this._hasFloatingLabel()?this._labelId:null}},{key:"getConnectedOverlayOrigin",value:function(){return this._connectionContainerRef||this._elementRef}},{key:"ngAfterContentInit",value:function(){var e=this;this._validateControlChild();var t=this._control;t.controlType&&this._elementRef.nativeElement.classList.add("mat-form-field-type-".concat(t.controlType)),t.stateChanges.pipe((0,g.O)(null)).subscribe(function(){e._validatePlaceholders(),e._syncDescribedByIds(),e._changeDetectorRef.markForCheck()}),t.ngControl&&t.ngControl.valueChanges&&t.ngControl.valueChanges.pipe((0,v.R)(this._destroyed)).subscribe(function(){return e._changeDetectorRef.markForCheck()}),this._ngZone.runOutsideAngular(function(){e._ngZone.onStable.pipe((0,v.R)(e._destroyed)).subscribe(function(){e._outlineGapCalculationNeededOnStable&&e.updateOutlineGap()})}),(0,f.T)(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(function(){e._outlineGapCalculationNeededOnStable=!0,e._changeDetectorRef.markForCheck()}),this._hintChildren.changes.pipe((0,g.O)(null)).subscribe(function(){e._processHints(),e._changeDetectorRef.markForCheck()}),this._errorChildren.changes.pipe((0,g.O)(null)).subscribe(function(){e._syncDescribedByIds(),e._changeDetectorRef.markForCheck()}),this._dir&&this._dir.change.pipe((0,v.R)(this._destroyed)).subscribe(function(){"function"==typeof requestAnimationFrame?e._ngZone.runOutsideAngular(function(){requestAnimationFrame(function(){return e.updateOutlineGap()})}):e.updateOutlineGap()})}},{key:"ngAfterContentChecked",value:function(){this._validateControlChild(),this._outlineGapCalculationNeededImmediately&&this.updateOutlineGap()}},{key:"ngAfterViewInit",value:function(){this._subscriptAnimationState="enter",this._changeDetectorRef.detectChanges()}},{key:"ngOnDestroy",value:function(){this._destroyed.next(),this._destroyed.complete()}},{key:"_shouldForward",value:function(e){var t=this._control?this._control.ngControl:null;return t&&t[e]}},{key:"_hasPlaceholder",value:function(){return!!(this._control&&this._control.placeholder||this._placeholderChild)}},{key:"_hasLabel",value:function(){return!(!this._labelChildNonStatic&&!this._labelChildStatic)}},{key:"_shouldLabelFloat",value:function(){return this._canLabelFloat()&&(this._control&&this._control.shouldLabelFloat||this._shouldAlwaysFloat())}},{key:"_hideControlPlaceholder",value:function(){return"legacy"===this.appearance&&!this._hasLabel()||this._hasLabel()&&!this._shouldLabelFloat()}},{key:"_hasFloatingLabel",value:function(){return this._hasLabel()||"legacy"===this.appearance&&this._hasPlaceholder()}},{key:"_getDisplayedMessages",value:function(){return this._errorChildren&&this._errorChildren.length>0&&this._control.errorState?"error":"hint"}},{key:"_animateAndLockLabel",value:function(){var e=this;this._hasFloatingLabel()&&this._canLabelFloat()&&(this._animationsEnabled&&this._label&&(this._showAlwaysAnimate=!0,(0,m.R)(this._label.nativeElement,"transitionend").pipe((0,y.q)(1)).subscribe(function(){e._showAlwaysAnimate=!1})),this.floatLabel="always",this._changeDetectorRef.markForCheck())}},{key:"_validatePlaceholders",value:function(){}},{key:"_processHints",value:function(){this._validateHints(),this._syncDescribedByIds()}},{key:"_validateHints",value:function(){}},{key:"_getDefaultFloatLabelState",value:function(){return this._defaults&&this._defaults.floatLabel||"auto"}},{key:"_syncDescribedByIds",value:function(){if(this._control){var e=[];if(this._control.userAriaDescribedBy&&"string"==typeof this._control.userAriaDescribedBy&&e.push.apply(e,(0,i.Z)(this._control.userAriaDescribedBy.split(" "))),"hint"===this._getDisplayedMessages()){var t=this._hintChildren?this._hintChildren.find(function(e){return"start"===e.align}):null,n=this._hintChildren?this._hintChildren.find(function(e){return"end"===e.align}):null;t?e.push(t.id):this._hintLabel&&e.push(this._hintLabelId),n&&e.push(n.id)}else this._errorChildren&&e.push.apply(e,(0,i.Z)(this._errorChildren.map(function(e){return e.id})));this._control.setDescribedByIds(e)}}},{key:"_validateControlChild",value:function(){}},{key:"updateOutlineGap",value:function(){var e=this._label?this._label.nativeElement:null;if("outline"===this.appearance&&e&&e.children.length&&e.textContent.trim()&&this._platform.isBrowser)if(this._isAttachedToDOM()){var t=0,n=0,i=this._connectionContainerRef.nativeElement,r=i.querySelectorAll(".mat-form-field-outline-start"),o=i.querySelectorAll(".mat-form-field-outline-gap");if(this._label&&this._label.nativeElement.children.length){var a=i.getBoundingClientRect();if(0===a.width&&0===a.height)return this._outlineGapCalculationNeededOnStable=!0,void(this._outlineGapCalculationNeededImmediately=!1);for(var s=this._getStartEnd(a),l=e.children,c=this._getStartEnd(l[0].getBoundingClientRect()),u=0,d=0;d0?.75*u+10:0}for(var h=0;h void",(0,E.IO)("@transformPanel",[(0,E.pV)()],{optional:!0}))]),transformPanel:(0,E.X$)("transformPanel",[(0,E.SB)("void",(0,E.oB)({transform:"scaleY(0.8)",minWidth:"100%",opacity:0})),(0,E.SB)("showing",(0,E.oB)({opacity:1,minWidth:"calc(100% + 32px)",transform:"scaleY(1)"})),(0,E.SB)("showing-multiple",(0,E.oB)({opacity:1,minWidth:"calc(100% + 64px)",transform:"scaleY(1)"})),(0,E.eR)("void => *",(0,E.jt)("120ms cubic-bezier(0, 0, 0.2, 1)")),(0,E.eR)("* => void",(0,E.jt)("100ms 25ms linear",(0,E.oB)({opacity:0})))])},H=0,Y=256,J=new p.OlP("mat-select-scroll-strategy"),G=new p.OlP("MAT_SELECT_CONFIG"),W={provide:J,deps:[d.aV],useFactory:function(e){return function(){return e.scrollStrategies.reposition()}}},V=function e(t,n){(0,u.Z)(this,e),this.source=t,this.value=n},Q=(0,f.Kr)((0,f.sb)((0,f.Id)((0,f.FD)(function(){return function e(t,n,i,r,o){(0,u.Z)(this,e),this._elementRef=t,this._defaultErrorStateMatcher=n,this._parentForm=i,this._parentFormGroup=r,this.ngControl=o}}())))),X=new p.OlP("MatSelectTrigger"),K=function(){var e=function(e){(0,l.Z)(n,e);var t=(0,c.Z)(n);function n(e,i,r,a,l,c,d,h,f,m,g,v,y,_){var b,M,O,E;return(0,u.Z)(this,n),(b=t.call(this,l,a,d,h,m))._viewportRuler=e,b._changeDetectorRef=i,b._ngZone=r,b._dir=c,b._parentFormField=f,b._liveAnnouncer=y,b._defaultOptions=_,b._panelOpen=!1,b._compareWith=function(e,t){return e===t},b._uid="mat-select-".concat(H++),b._triggerAriaLabelledBy=null,b._destroy=new w.xQ,b._onChange=function(){},b._onTouched=function(){},b._valueId="mat-select-value-".concat(H++),b._panelDoneAnimatingStream=new w.xQ,b._overlayPanelClass=(null===(M=b._defaultOptions)||void 0===M?void 0:M.overlayPanelClass)||"",b._focused=!1,b.controlType="mat-select",b._required=!1,b._multiple=!1,b._disableOptionCentering=null!==(E=null===(O=b._defaultOptions)||void 0===O?void 0:O.disableOptionCentering)&&void 0!==E&&E,b.ariaLabel="",b.optionSelectionChanges=(0,S.P)(function(){var e=b.options;return e?e.changes.pipe((0,C.O)(e),(0,k.w)(function(){return x.T.apply(void 0,(0,o.Z)(e.map(function(e){return e.onSelectionChange})))})):b._ngZone.onStable.pipe((0,T.q)(1),(0,k.w)(function(){return b.optionSelectionChanges}))}),b.openedChange=new p.vpe,b._openedStream=b.openedChange.pipe((0,A.h)(function(e){return e}),(0,Z.U)(function(){})),b._closedStream=b.openedChange.pipe((0,A.h)(function(e){return!e}),(0,Z.U)(function(){})),b.selectionChange=new p.vpe,b.valueChange=new p.vpe,b.ngControl&&(b.ngControl.valueAccessor=(0,s.Z)(b)),null!=(null==_?void 0:_.typeaheadDebounceInterval)&&(b._typeaheadDebounceInterval=_.typeaheadDebounceInterval),b._scrollStrategyFactory=v,b._scrollStrategy=b._scrollStrategyFactory(),b.tabIndex=parseInt(g)||0,b.id=b.id,b}return(0,a.Z)(n,[{key:"focused",get:function(){return this._focused||this._panelOpen}},{key:"placeholder",get:function(){return this._placeholder},set:function(e){this._placeholder=e,this.stateChanges.next()}},{key:"required",get:function(){return this._required},set:function(e){this._required=(0,y.Ig)(e),this.stateChanges.next()}},{key:"multiple",get:function(){return this._multiple},set:function(e){this._multiple=(0,y.Ig)(e)}},{key:"disableOptionCentering",get:function(){return this._disableOptionCentering},set:function(e){this._disableOptionCentering=(0,y.Ig)(e)}},{key:"compareWith",get:function(){return this._compareWith},set:function(e){this._compareWith=e,this._selectionModel&&this._initializeSelection()}},{key:"value",get:function(){return this._value},set:function(e){(e!==this._value||this._multiple&&Array.isArray(e))&&(this.options&&this._setSelectionByValue(e),this._value=e)}},{key:"typeaheadDebounceInterval",get:function(){return this._typeaheadDebounceInterval},set:function(e){this._typeaheadDebounceInterval=(0,y.su)(e)}},{key:"id",get:function(){return this._id},set:function(e){this._id=e||this._uid,this.stateChanges.next()}},{key:"ngOnInit",value:function(){var e=this;this._selectionModel=new _.Ov(this.multiple),this.stateChanges.next(),this._panelDoneAnimatingStream.pipe((0,M.x)(),(0,O.R)(this._destroy)).subscribe(function(){return e._panelDoneAnimating(e.panelOpen)})}},{key:"ngAfterContentInit",value:function(){var e=this;this._initKeyManager(),this._selectionModel.changed.pipe((0,O.R)(this._destroy)).subscribe(function(e){e.added.forEach(function(e){return e.select()}),e.removed.forEach(function(e){return e.deselect()})}),this.options.changes.pipe((0,C.O)(null),(0,O.R)(this._destroy)).subscribe(function(){e._resetOptions(),e._initializeSelection()})}},{key:"ngDoCheck",value:function(){var e=this._getTriggerAriaLabelledby();if(e!==this._triggerAriaLabelledBy){var t=this._elementRef.nativeElement;this._triggerAriaLabelledBy=e,e?t.setAttribute("aria-labelledby",e):t.removeAttribute("aria-labelledby")}this.ngControl&&this.updateErrorState()}},{key:"ngOnChanges",value:function(e){e.disabled&&this.stateChanges.next(),e.typeaheadDebounceInterval&&this._keyManager&&this._keyManager.withTypeAhead(this._typeaheadDebounceInterval)}},{key:"ngOnDestroy",value:function(){this._destroy.next(),this._destroy.complete(),this.stateChanges.complete()}},{key:"toggle",value:function(){this.panelOpen?this.close():this.open()}},{key:"open",value:function(){this._canOpen()&&(this._panelOpen=!0,this._keyManager.withHorizontalOrientation(null),this._highlightCorrectOption(),this._changeDetectorRef.markForCheck())}},{key:"close",value:function(){this._panelOpen&&(this._panelOpen=!1,this._keyManager.withHorizontalOrientation(this._isRtl()?"rtl":"ltr"),this._changeDetectorRef.markForCheck(),this._onTouched())}},{key:"writeValue",value:function(e){this.value=e}},{key:"registerOnChange",value:function(e){this._onChange=e}},{key:"registerOnTouched",value:function(e){this._onTouched=e}},{key:"setDisabledState",value:function(e){this.disabled=e,this._changeDetectorRef.markForCheck(),this.stateChanges.next()}},{key:"panelOpen",get:function(){return this._panelOpen}},{key:"selected",get:function(){return this.multiple?this._selectionModel.selected:this._selectionModel.selected[0]}},{key:"triggerValue",get:function(){if(this.empty)return"";if(this._multiple){var e=this._selectionModel.selected.map(function(e){return e.viewValue});return this._isRtl()&&e.reverse(),e.join(", ")}return this._selectionModel.selected[0].viewValue}},{key:"_isRtl",value:function(){return!!this._dir&&"rtl"===this._dir.value}},{key:"_handleKeydown",value:function(e){this.disabled||(this.panelOpen?this._handleOpenKeydown(e):this._handleClosedKeydown(e))}},{key:"_handleClosedKeydown",value:function(e){var t=e.keyCode,n=t===b.JH||t===b.LH||t===b.oh||t===b.SV,i=t===b.K5||t===b.L_,r=this._keyManager;if(!r.isTyping()&&i&&!(0,b.Vb)(e)||(this.multiple||e.altKey)&&n)e.preventDefault(),this.open();else if(!this.multiple){var o=this.selected;r.onKeydown(e);var a=this.selected;a&&o!==a&&this._liveAnnouncer.announce(a.viewValue,1e4)}}},{key:"_handleOpenKeydown",value:function(e){var t=this._keyManager,n=e.keyCode,i=n===b.JH||n===b.LH,r=t.isTyping();if(i&&e.altKey)e.preventDefault(),this.close();else if(r||n!==b.K5&&n!==b.L_||!t.activeItem||(0,b.Vb)(e))if(!r&&this._multiple&&n===b.A&&e.ctrlKey){e.preventDefault();var o=this.options.some(function(e){return!e.disabled&&!e.selected});this.options.forEach(function(e){e.disabled||(o?e.select():e.deselect())})}else{var a=t.activeItemIndex;t.onKeydown(e),this._multiple&&i&&e.shiftKey&&t.activeItem&&t.activeItemIndex!==a&&t.activeItem._selectViaInteraction()}else e.preventDefault(),t.activeItem._selectViaInteraction()}},{key:"_onFocus",value:function(){this.disabled||(this._focused=!0,this.stateChanges.next())}},{key:"_onBlur",value:function(){this._focused=!1,this.disabled||this.panelOpen||(this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next())}},{key:"_onAttached",value:function(){var e=this;this._overlayDir.positionChange.pipe((0,T.q)(1)).subscribe(function(){e._changeDetectorRef.detectChanges(),e._positioningSettled()})}},{key:"_getPanelTheme",value:function(){return this._parentFormField?"mat-".concat(this._parentFormField.color):""}},{key:"empty",get:function(){return!this._selectionModel||this._selectionModel.isEmpty()}},{key:"_initializeSelection",value:function(){var e=this;Promise.resolve().then(function(){e._setSelectionByValue(e.ngControl?e.ngControl.value:e._value),e.stateChanges.next()})}},{key:"_setSelectionByValue",value:function(e){var t=this;if(this._selectionModel.selected.forEach(function(e){return e.setInactiveStyles()}),this._selectionModel.clear(),this.multiple&&e)Array.isArray(e),e.forEach(function(e){return t._selectValue(e)}),this._sortValues();else{var n=this._selectValue(e);n?this._keyManager.updateActiveItem(n):this.panelOpen||this._keyManager.updateActiveItem(-1)}this._changeDetectorRef.markForCheck()}},{key:"_selectValue",value:function(e){var t=this,n=this.options.find(function(n){if(t._selectionModel.isSelected(n))return!1;try{return null!=n.value&&t._compareWith(n.value,e)}catch(i){return!1}});return n&&this._selectionModel.select(n),n}},{key:"_initKeyManager",value:function(){var e=this;this._keyManager=new v.s1(this.options).withTypeAhead(this._typeaheadDebounceInterval).withVerticalOrientation().withHorizontalOrientation(this._isRtl()?"rtl":"ltr").withHomeAndEnd().withAllowedModifierKeys(["shiftKey"]),this._keyManager.tabOut.pipe((0,O.R)(this._destroy)).subscribe(function(){e.panelOpen&&(!e.multiple&&e._keyManager.activeItem&&e._keyManager.activeItem._selectViaInteraction(),e.focus(),e.close())}),this._keyManager.change.pipe((0,O.R)(this._destroy)).subscribe(function(){e._panelOpen&&e.panel?e._scrollOptionIntoView(e._keyManager.activeItemIndex||0):e._panelOpen||e.multiple||!e._keyManager.activeItem||e._keyManager.activeItem._selectViaInteraction()})}},{key:"_resetOptions",value:function(){var e=this,t=(0,x.T)(this.options.changes,this._destroy);this.optionSelectionChanges.pipe((0,O.R)(t)).subscribe(function(t){e._onSelect(t.source,t.isUserInput),t.isUserInput&&!e.multiple&&e._panelOpen&&(e.close(),e.focus())}),x.T.apply(void 0,(0,o.Z)(this.options.map(function(e){return e._stateChanges}))).pipe((0,O.R)(t)).subscribe(function(){e._changeDetectorRef.markForCheck(),e.stateChanges.next()})}},{key:"_onSelect",value:function(e,t){var n=this._selectionModel.isSelected(e);null!=e.value||this._multiple?(n!==e.selected&&(e.selected?this._selectionModel.select(e):this._selectionModel.deselect(e)),t&&this._keyManager.setActiveItem(e),this.multiple&&(this._sortValues(),t&&this.focus())):(e.deselect(),this._selectionModel.clear(),null!=this.value&&this._propagateChanges(e.value)),n!==this._selectionModel.isSelected(e)&&this._propagateChanges(),this.stateChanges.next()}},{key:"_sortValues",value:function(){var e=this;if(this.multiple){var t=this.options.toArray();this._selectionModel.sort(function(n,i){return e.sortComparator?e.sortComparator(n,i,t):t.indexOf(n)-t.indexOf(i)}),this.stateChanges.next()}}},{key:"_propagateChanges",value:function(e){var t;t=this.multiple?this.selected.map(function(e){return e.value}):this.selected?this.selected.value:e,this._value=t,this.valueChange.emit(t),this._onChange(t),this.selectionChange.emit(this._getChangeEvent(t)),this._changeDetectorRef.markForCheck()}},{key:"_highlightCorrectOption",value:function(){this._keyManager&&(this.empty?this._keyManager.setFirstItemActive():this._keyManager.setActiveItem(this._selectionModel.selected[0]))}},{key:"_canOpen",value:function(){var e;return!this._panelOpen&&!this.disabled&&(null===(e=this.options)||void 0===e?void 0:e.length)>0}},{key:"focus",value:function(e){this._elementRef.nativeElement.focus(e)}},{key:"_getPanelAriaLabelledby",value:function(){var e;if(this.ariaLabel)return null;var t=null===(e=this._parentFormField)||void 0===e?void 0:e.getLabelId();return this.ariaLabelledby?(t?t+" ":"")+this.ariaLabelledby:t}},{key:"_getAriaActiveDescendant",value:function(){return this.panelOpen&&this._keyManager&&this._keyManager.activeItem?this._keyManager.activeItem.id:null}},{key:"_getTriggerAriaLabelledby",value:function(){var e;if(this.ariaLabel)return null;var t=null===(e=this._parentFormField)||void 0===e?void 0:e.getLabelId(),n=(t?t+" ":"")+this._valueId;return this.ariaLabelledby&&(n+=" "+this.ariaLabelledby),n}},{key:"_panelDoneAnimating",value:function(e){this.openedChange.emit(e)}},{key:"setDescribedByIds",value:function(e){this._ariaDescribedby=e.join(" ")}},{key:"onContainerClick",value:function(){this.focus(),this.open()}},{key:"shouldLabelFloat",get:function(){return this._panelOpen||!this.empty||this._focused&&!!this._placeholder}}]),n}(Q);return e.\u0275fac=function(t){return new(t||e)(p.Y36(g.rL),p.Y36(p.sBO),p.Y36(p.R0b),p.Y36(f.rD),p.Y36(p.SBq),p.Y36(P.Is,8),p.Y36(I.F,8),p.Y36(I.sg,8),p.Y36(m.G_,8),p.Y36(I.a5,10),p.$8M("tabindex"),p.Y36(J),p.Y36(v.Kd),p.Y36(G,8))},e.\u0275dir=p.lG2({type:e,viewQuery:function(e,t){var n;1&e&&(p.Gf(q,5),p.Gf(N,5),p.Gf(d.pI,5)),2&e&&(p.iGM(n=p.CRH())&&(t.trigger=n.first),p.iGM(n=p.CRH())&&(t.panel=n.first),p.iGM(n=p.CRH())&&(t._overlayDir=n.first))},inputs:{ariaLabel:["aria-label","ariaLabel"],id:"id",placeholder:"placeholder",required:"required",multiple:"multiple",disableOptionCentering:"disableOptionCentering",compareWith:"compareWith",value:"value",typeaheadDebounceInterval:"typeaheadDebounceInterval",panelClass:"panelClass",ariaLabelledby:["aria-labelledby","ariaLabelledby"],errorStateMatcher:"errorStateMatcher",sortComparator:"sortComparator"},outputs:{openedChange:"openedChange",_openedStream:"opened",_closedStream:"closed",selectionChange:"selectionChange",valueChange:"valueChange"},features:[p.qOj,p.TTD]}),e}(),$=function(){var e=function(e){(0,l.Z)(n,e);var t=(0,c.Z)(n);function n(){var e;return(0,u.Z)(this,n),(e=t.apply(this,arguments))._scrollTop=0,e._triggerFontSize=0,e._transformOrigin="top",e._offsetY=0,e._positions=[{originX:"start",originY:"top",overlayX:"start",overlayY:"top"},{originX:"start",originY:"bottom",overlayX:"start",overlayY:"bottom"}],e}return(0,a.Z)(n,[{key:"_calculateOverlayScroll",value:function(e,t,n){var i=this._getItemHeight();return Math.min(Math.max(0,i*e-t+i/2),n)}},{key:"ngOnInit",value:function(){var e=this;(0,i.Z)((0,r.Z)(n.prototype),"ngOnInit",this).call(this),this._viewportRuler.change().pipe((0,O.R)(this._destroy)).subscribe(function(){e.panelOpen&&(e._triggerRect=e.trigger.nativeElement.getBoundingClientRect(),e._changeDetectorRef.markForCheck())})}},{key:"open",value:function(){var e=this;(0,i.Z)((0,r.Z)(n.prototype),"_canOpen",this).call(this)&&((0,i.Z)((0,r.Z)(n.prototype),"open",this).call(this),this._triggerRect=this.trigger.nativeElement.getBoundingClientRect(),this._triggerFontSize=parseInt(getComputedStyle(this.trigger.nativeElement).fontSize||"0"),this._calculateOverlayPosition(),this._ngZone.onStable.pipe((0,T.q)(1)).subscribe(function(){e._triggerFontSize&&e._overlayDir.overlayRef&&e._overlayDir.overlayRef.overlayElement&&(e._overlayDir.overlayRef.overlayElement.style.fontSize="".concat(e._triggerFontSize,"px"))}))}},{key:"_scrollOptionIntoView",value:function(e){var t=(0,f.CB)(e,this.options,this.optionGroups),n=this._getItemHeight();this.panel.nativeElement.scrollTop=0===e&&1===t?0:(0,f.jH)((e+t)*n,n,this.panel.nativeElement.scrollTop,Y)}},{key:"_positioningSettled",value:function(){this._calculateOverlayOffsetX(),this.panel.nativeElement.scrollTop=this._scrollTop}},{key:"_panelDoneAnimating",value:function(e){this.panelOpen?this._scrollTop=0:(this._overlayDir.offsetX=0,this._changeDetectorRef.markForCheck()),(0,i.Z)((0,r.Z)(n.prototype),"_panelDoneAnimating",this).call(this,e)}},{key:"_getChangeEvent",value:function(e){return new V(this,e)}},{key:"_calculateOverlayOffsetX",value:function(){var e,t=this._overlayDir.overlayRef.overlayElement.getBoundingClientRect(),n=this._viewportRuler.getViewportSize(),i=this._isRtl(),r=this.multiple?56:32;if(this.multiple)e=40;else if(this.disableOptionCentering)e=16;else{var o=this._selectionModel.selected[0]||this.options.first;e=o&&o.group?32:16}i||(e*=-1);var a=0-(t.left+e-(i?r:0)),s=t.right+e-n.width+(i?0:r);a>0?e+=a+8:s>0&&(e-=s+8),this._overlayDir.offsetX=Math.round(e),this._overlayDir.overlayRef.updatePosition()}},{key:"_calculateOverlayOffsetY",value:function(e,t,n){var i,r=this._getItemHeight(),o=(r-this._triggerRect.height)/2,a=Math.floor(Y/r);return this.disableOptionCentering?0:(i=0===this._scrollTop?e*r:this._scrollTop===n?(e-(this._getItemCount()-a))*r+(r-(this._getItemCount()*r-Y)%r):t-r/2,Math.round(-1*i-o))}},{key:"_checkOverlayWithinViewport",value:function(e){var t=this._getItemHeight(),n=this._viewportRuler.getViewportSize(),i=this._triggerRect.top-8,r=n.height-this._triggerRect.bottom-8,o=Math.abs(this._offsetY),a=Math.min(this._getItemCount()*t,Y)-o-this._triggerRect.height;a>r?this._adjustPanelUp(a,r):o>i?this._adjustPanelDown(o,i,e):this._transformOrigin=this._getOriginBasedOnOption()}},{key:"_adjustPanelUp",value:function(e,t){var n=Math.round(e-t);this._scrollTop-=n,this._offsetY-=n,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop<=0&&(this._scrollTop=0,this._offsetY=0,this._transformOrigin="50% bottom 0px")}},{key:"_adjustPanelDown",value:function(e,t,n){var i=Math.round(e-t);if(this._scrollTop+=i,this._offsetY+=i,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop>=n)return this._scrollTop=n,this._offsetY=0,void(this._transformOrigin="50% top 0px")}},{key:"_calculateOverlayPosition",value:function(){var e,t=this._getItemHeight(),n=this._getItemCount(),i=Math.min(n*t,Y),r=n*t-i;e=this.empty?0:Math.max(this.options.toArray().indexOf(this._selectionModel.selected[0]),0),e+=(0,f.CB)(e,this.options,this.optionGroups);var o=i/2;this._scrollTop=this._calculateOverlayScroll(e,o,r),this._offsetY=this._calculateOverlayOffsetY(e,o,r),this._checkOverlayWithinViewport(r)}},{key:"_getOriginBasedOnOption",value:function(){var e=this._getItemHeight(),t=(e-this._triggerRect.height)/2,n=Math.abs(this._offsetY)-t+e/2;return"50% ".concat(n,"px 0px")}},{key:"_getItemHeight",value:function(){return 3*this._triggerFontSize}},{key:"_getItemCount",value:function(){return this.options.length+this.optionGroups.length}}]),n}(K);return e.\u0275fac=function(){var t;return function(n){return(t||(t=p.n5z(e)))(n||e)}}(),e.\u0275cmp=p.Xpm({type:e,selectors:[["mat-select"]],contentQueries:function(e,t,n){var i;1&e&&(p.Suo(n,X,5),p.Suo(n,f.ey,5),p.Suo(n,f.K7,5)),2&e&&(p.iGM(i=p.CRH())&&(t.customTrigger=i.first),p.iGM(i=p.CRH())&&(t.options=i),p.iGM(i=p.CRH())&&(t.optionGroups=i))},hostAttrs:["role","combobox","aria-autocomplete","none","aria-haspopup","true",1,"mat-select"],hostVars:20,hostBindings:function(e,t){1&e&&p.NdJ("keydown",function(e){return t._handleKeydown(e)})("focus",function(){return t._onFocus()})("blur",function(){return t._onBlur()}),2&e&&(p.uIk("id",t.id)("tabindex",t.tabIndex)("aria-controls",t.panelOpen?t.id+"-panel":null)("aria-expanded",t.panelOpen)("aria-label",t.ariaLabel||null)("aria-required",t.required.toString())("aria-disabled",t.disabled.toString())("aria-invalid",t.errorState)("aria-describedby",t._ariaDescribedby||null)("aria-activedescendant",t._getAriaActiveDescendant()),p.ekj("mat-select-disabled",t.disabled)("mat-select-invalid",t.errorState)("mat-select-required",t.required)("mat-select-empty",t.empty)("mat-select-multiple",t.multiple))},inputs:{disabled:"disabled",disableRipple:"disableRipple",tabIndex:"tabIndex"},exportAs:["matSelect"],features:[p._Bn([{provide:m.Eo,useExisting:e},{provide:f.HF,useExisting:e}]),p.qOj],ngContentSelectors:z,decls:9,vars:12,consts:[["cdk-overlay-origin","",1,"mat-select-trigger",3,"click"],["origin","cdkOverlayOrigin","trigger",""],[1,"mat-select-value",3,"ngSwitch"],["class","mat-select-placeholder mat-select-min-line",4,"ngSwitchCase"],["class","mat-select-value-text",3,"ngSwitch",4,"ngSwitchCase"],[1,"mat-select-arrow-wrapper"],[1,"mat-select-arrow"],["cdk-connected-overlay","","cdkConnectedOverlayLockPosition","","cdkConnectedOverlayHasBackdrop","","cdkConnectedOverlayBackdropClass","cdk-overlay-transparent-backdrop",3,"cdkConnectedOverlayPanelClass","cdkConnectedOverlayScrollStrategy","cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayPositions","cdkConnectedOverlayMinWidth","cdkConnectedOverlayOffsetY","backdropClick","attach","detach"],[1,"mat-select-placeholder","mat-select-min-line"],[1,"mat-select-value-text",3,"ngSwitch"],["class","mat-select-min-line",4,"ngSwitchDefault"],[4,"ngSwitchCase"],[1,"mat-select-min-line"],[1,"mat-select-panel-wrap"],["role","listbox","tabindex","-1",3,"ngClass","keydown"],["panel",""]],template:function(e,t){if(1&e&&(p.F$t(j),p.TgZ(0,"div",0,1),p.NdJ("click",function(){return t.toggle()}),p.TgZ(3,"div",2),p.YNc(4,D,2,1,"span",3),p.YNc(5,F,3,2,"span",4),p.qZA(),p.TgZ(6,"div",5),p._UZ(7,"div",6),p.qZA(),p.qZA(),p.YNc(8,B,4,14,"ng-template",7),p.NdJ("backdropClick",function(){return t.close()})("attach",function(){return t._onAttached()})("detach",function(){return t.close()})),2&e){var n=p.MAs(1);p.uIk("aria-owns",t.panelOpen?t.id+"-panel":null),p.xp6(3),p.Q6J("ngSwitch",t.empty),p.uIk("id",t._valueId),p.xp6(1),p.Q6J("ngSwitchCase",!0),p.xp6(1),p.Q6J("ngSwitchCase",!1),p.xp6(3),p.Q6J("cdkConnectedOverlayPanelClass",t._overlayPanelClass)("cdkConnectedOverlayScrollStrategy",t._scrollStrategy)("cdkConnectedOverlayOrigin",n)("cdkConnectedOverlayOpen",t.panelOpen)("cdkConnectedOverlayPositions",t._positions)("cdkConnectedOverlayMinWidth",null==t._triggerRect?null:t._triggerRect.width)("cdkConnectedOverlayOffsetY",t._offsetY)}},directives:[d.xu,h.RF,h.n9,d.pI,h.ED,h.mk],styles:['.mat-select{display:inline-block;width:100%;outline:none}.mat-select-trigger{display:inline-table;cursor:pointer;position:relative;box-sizing:border-box}.mat-select-disabled .mat-select-trigger{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.mat-select-value{display:table-cell;max-width:0;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-select-arrow-wrapper{display:table-cell;vertical-align:middle}.mat-form-field-appearance-fill .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-outline .mat-select-arrow-wrapper{transform:translateY(-25%)}.mat-form-field-appearance-standard.mat-form-field-has-label .mat-select:not(.mat-select-empty) .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:none}.mat-select-arrow{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid;margin:0 4px}.mat-select-panel-wrap{flex-basis:100%}.mat-select-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;padding-top:0;padding-bottom:0;max-height:256px;min-width:100%;border-radius:4px;outline:0}.cdk-high-contrast-active .mat-select-panel{outline:solid 1px}.mat-select-panel .mat-optgroup-label,.mat-select-panel .mat-option{font-size:inherit;line-height:3em;height:3em}.mat-form-field-type-mat-select:not(.mat-form-field-disabled) .mat-form-field-flex{cursor:pointer}.mat-form-field-type-mat-select .mat-form-field-label{width:calc(100% - 18px)}.mat-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable .mat-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-select-placeholder{color:transparent;-webkit-text-fill-color:transparent;transition:none;display:block}.mat-select-min-line:empty::before{content:" ";white-space:pre;width:1px;display:inline-block;opacity:0}\n'],encapsulation:2,data:{animation:[U.transformPanelWrap,U.transformPanel]},changeDetection:0}),e}(),ee=function(){var e=function e(){(0,u.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=p.oAB({type:e}),e.\u0275inj=p.cJS({providers:[W],imports:[[h.ez,d.U8,f.Ng,f.BQ],g.ZD,m.lN,f.Ng,f.BQ]}),e}()},88802:function(e,t,n){"use strict";n.d(t,{uX:function(){return te},SP:function(){return de},uD:function(){return K},Nh:function(){return ye}}),n(3574);var i=n(25801),r=n(51751),o=n(12558),a=n(49843),s=n(37859),l=n(61680),c=n(11254),u=n(6517),d=n(96798),h=n(80785),p=n(40098),f=n(37602),m=n(59412),g=n(38480),v=n(68707),y=n(5051),_=n(55371),b=n(33090),w=n(43161),S=n(5041),x=n(739),C=n(57682),k=n(76161),T=n(44213),A=n(78081),Z=n(15427),M=n(32819),O=n(8392),E=n(28722);function P(e,t){1&e&&f.Hsn(0)}var I=["*"];function q(e,t){}var N=function(e){return{animationDuration:e}},D=function(e,t){return{value:e,params:t}},R=["tabBodyWrapper"],L=["tabHeader"];function F(e,t){}function B(e,t){if(1&e&&f.YNc(0,F,0,0,"ng-template",9),2&e){var n=f.oxw().$implicit;f.Q6J("cdkPortalOutlet",n.templateLabel)}}function j(e,t){if(1&e&&f._uU(0),2&e){var n=f.oxw().$implicit;f.Oqu(n.textLabel)}}function z(e,t){if(1&e){var n=f.EpF();f.TgZ(0,"div",6),f.NdJ("click",function(){var e=f.CHM(n),t=e.$implicit,i=e.index,r=f.oxw(),o=f.MAs(1);return r._handleClick(t,o,i)})("cdkFocusChange",function(e){var t=f.CHM(n).index;return f.oxw()._tabFocusChanged(e,t)}),f.TgZ(1,"div",7),f.YNc(2,B,1,1,"ng-template",8),f.YNc(3,j,1,1,"ng-template",8),f.qZA(),f.qZA()}if(2&e){var i=t.$implicit,r=t.index,o=f.oxw();f.ekj("mat-tab-label-active",o.selectedIndex==r),f.Q6J("id",o._getTabLabelId(r))("disabled",i.disabled)("matRippleDisabled",i.disabled||o.disableRipple),f.uIk("tabIndex",o._getTabIndex(i,r))("aria-posinset",r+1)("aria-setsize",o._tabs.length)("aria-controls",o._getTabContentId(r))("aria-selected",o.selectedIndex==r)("aria-label",i.ariaLabel||null)("aria-labelledby",!i.ariaLabel&&i.ariaLabelledby?i.ariaLabelledby:null),f.xp6(2),f.Q6J("ngIf",i.templateLabel),f.xp6(1),f.Q6J("ngIf",!i.templateLabel)}}function U(e,t){if(1&e){var n=f.EpF();f.TgZ(0,"mat-tab-body",10),f.NdJ("_onCentered",function(){return f.CHM(n),f.oxw()._removeTabBodyWrapperHeight()})("_onCentering",function(e){return f.CHM(n),f.oxw()._setTabBodyWrapperHeight(e)}),f.qZA()}if(2&e){var i=t.$implicit,r=t.index,o=f.oxw();f.ekj("mat-tab-body-active",o.selectedIndex===r),f.Q6J("id",o._getTabContentId(r))("content",i.content)("position",i.position)("origin",i.origin)("animationDuration",o.animationDuration),f.uIk("tabindex",null!=o.contentTabIndex&&o.selectedIndex===r?o.contentTabIndex:null)("aria-labelledby",o._getTabLabelId(r))}}var H=["tabListContainer"],Y=["tabList"],J=["nextPaginator"],G=["previousPaginator"],W=new f.OlP("MatInkBarPositioner",{providedIn:"root",factory:function(){return function(e){return{left:e?(e.offsetLeft||0)+"px":"0",width:e?(e.offsetWidth||0)+"px":"0"}}}}),V=function(){var e=function(){function e(t,n,i,r){(0,l.Z)(this,e),this._elementRef=t,this._ngZone=n,this._inkBarPositioner=i,this._animationMode=r}return(0,c.Z)(e,[{key:"alignToElement",value:function(e){var t=this;this.show(),"undefined"!=typeof requestAnimationFrame?this._ngZone.runOutsideAngular(function(){requestAnimationFrame(function(){return t._setStyles(e)})}):this._setStyles(e)}},{key:"show",value:function(){this._elementRef.nativeElement.style.visibility="visible"}},{key:"hide",value:function(){this._elementRef.nativeElement.style.visibility="hidden"}},{key:"_setStyles",value:function(e){var t=this._inkBarPositioner(e),n=this._elementRef.nativeElement;n.style.left=t.left,n.style.width=t.width}}]),e}();return e.\u0275fac=function(t){return new(t||e)(f.Y36(f.SBq),f.Y36(f.R0b),f.Y36(W),f.Y36(g.Qb,8))},e.\u0275dir=f.lG2({type:e,selectors:[["mat-ink-bar"]],hostAttrs:[1,"mat-ink-bar"],hostVars:2,hostBindings:function(e,t){2&e&&f.ekj("_mat-animation-noopable","NoopAnimations"===t._animationMode)}}),e}(),Q=new f.OlP("MatTabContent"),X=new f.OlP("MatTabLabel"),K=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(){return(0,l.Z)(this,n),t.apply(this,arguments)}return n}(h.ig);return e.\u0275fac=function(){var t;return function(n){return(t||(t=f.n5z(e)))(n||e)}}(),e.\u0275dir=f.lG2({type:e,selectors:[["","mat-tab-label",""],["","matTabLabel",""]],features:[f._Bn([{provide:X,useExisting:e}]),f.qOj]}),e}(),$=(0,m.Id)(function(){return function e(){(0,l.Z)(this,e)}}()),ee=new f.OlP("MAT_TAB_GROUP"),te=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i){var r;return(0,l.Z)(this,n),(r=t.call(this))._viewContainerRef=e,r._closestTabGroup=i,r.textLabel="",r._contentPortal=null,r._stateChanges=new v.xQ,r.position=null,r.origin=null,r.isActive=!1,r}return(0,c.Z)(n,[{key:"templateLabel",get:function(){return this._templateLabel},set:function(e){this._setTemplateLabelInput(e)}},{key:"content",get:function(){return this._contentPortal}},{key:"ngOnChanges",value:function(e){(e.hasOwnProperty("textLabel")||e.hasOwnProperty("disabled"))&&this._stateChanges.next()}},{key:"ngOnDestroy",value:function(){this._stateChanges.complete()}},{key:"ngOnInit",value:function(){this._contentPortal=new h.UE(this._explicitContent||this._implicitContent,this._viewContainerRef)}},{key:"_setTemplateLabelInput",value:function(e){e&&(this._templateLabel=e)}}]),n}($);return e.\u0275fac=function(t){return new(t||e)(f.Y36(f.s_b),f.Y36(ee,8))},e.\u0275cmp=f.Xpm({type:e,selectors:[["mat-tab"]],contentQueries:function(e,t,n){var i;1&e&&(f.Suo(n,X,5),f.Suo(n,Q,7,f.Rgc)),2&e&&(f.iGM(i=f.CRH())&&(t.templateLabel=i.first),f.iGM(i=f.CRH())&&(t._explicitContent=i.first))},viewQuery:function(e,t){var n;1&e&&f.Gf(f.Rgc,7),2&e&&f.iGM(n=f.CRH())&&(t._implicitContent=n.first)},inputs:{disabled:"disabled",textLabel:["label","textLabel"],ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"]},exportAs:["matTab"],features:[f.qOj,f.TTD],ngContentSelectors:I,decls:1,vars:0,template:function(e,t){1&e&&(f.F$t(),f.YNc(0,P,1,0,"ng-template"))},encapsulation:2}),e}(),ne={translateTab:(0,x.X$)("translateTab",[(0,x.SB)("center, void, left-origin-center, right-origin-center",(0,x.oB)({transform:"none"})),(0,x.SB)("left",(0,x.oB)({transform:"translate3d(-100%, 0, 0)",minHeight:"1px"})),(0,x.SB)("right",(0,x.oB)({transform:"translate3d(100%, 0, 0)",minHeight:"1px"})),(0,x.eR)("* => left, * => right, left => center, right => center",(0,x.jt)("{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)")),(0,x.eR)("void => left-origin-center",[(0,x.oB)({transform:"translate3d(-100%, 0, 0)"}),(0,x.jt)("{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)")]),(0,x.eR)("void => right-origin-center",[(0,x.oB)({transform:"translate3d(100%, 0, 0)"}),(0,x.jt)("{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)")])])},ie=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r,o){var a;return(0,l.Z)(this,n),(a=t.call(this,e,i,o))._host=r,a._centeringSub=y.w.EMPTY,a._leavingSub=y.w.EMPTY,a}return(0,c.Z)(n,[{key:"ngOnInit",value:function(){var e=this;(0,r.Z)((0,o.Z)(n.prototype),"ngOnInit",this).call(this),this._centeringSub=this._host._beforeCentering.pipe((0,C.O)(this._host._isCenterPosition(this._host._position))).subscribe(function(t){t&&!e.hasAttached()&&e.attach(e._host._content)}),this._leavingSub=this._host._afterLeavingCenter.subscribe(function(){e.detach()})}},{key:"ngOnDestroy",value:function(){(0,r.Z)((0,o.Z)(n.prototype),"ngOnDestroy",this).call(this),this._centeringSub.unsubscribe(),this._leavingSub.unsubscribe()}}]),n}(h.Pl);return e.\u0275fac=function(t){return new(t||e)(f.Y36(f._Vd),f.Y36(f.s_b),f.Y36((0,f.Gpc)(function(){return oe})),f.Y36(p.K0))},e.\u0275dir=f.lG2({type:e,selectors:[["","matTabBodyHost",""]],features:[f.qOj]}),e}(),re=function(){var e=function(){function e(t,n,i){var r=this;(0,l.Z)(this,e),this._elementRef=t,this._dir=n,this._dirChangeSubscription=y.w.EMPTY,this._translateTabComplete=new v.xQ,this._onCentering=new f.vpe,this._beforeCentering=new f.vpe,this._afterLeavingCenter=new f.vpe,this._onCentered=new f.vpe(!0),this.animationDuration="500ms",n&&(this._dirChangeSubscription=n.change.subscribe(function(e){r._computePositionAnimationState(e),i.markForCheck()})),this._translateTabComplete.pipe((0,k.x)(function(e,t){return e.fromState===t.fromState&&e.toState===t.toState})).subscribe(function(e){r._isCenterPosition(e.toState)&&r._isCenterPosition(r._position)&&r._onCentered.emit(),r._isCenterPosition(e.fromState)&&!r._isCenterPosition(r._position)&&r._afterLeavingCenter.emit()})}return(0,c.Z)(e,[{key:"position",set:function(e){this._positionIndex=e,this._computePositionAnimationState()}},{key:"ngOnInit",value:function(){"center"==this._position&&null!=this.origin&&(this._position=this._computePositionFromOrigin(this.origin))}},{key:"ngOnDestroy",value:function(){this._dirChangeSubscription.unsubscribe(),this._translateTabComplete.complete()}},{key:"_onTranslateTabStarted",value:function(e){var t=this._isCenterPosition(e.toState);this._beforeCentering.emit(t),t&&this._onCentering.emit(this._elementRef.nativeElement.clientHeight)}},{key:"_getLayoutDirection",value:function(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}},{key:"_isCenterPosition",value:function(e){return"center"==e||"left-origin-center"==e||"right-origin-center"==e}},{key:"_computePositionAnimationState",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this._getLayoutDirection();this._position=this._positionIndex<0?"ltr"==e?"left":"right":this._positionIndex>0?"ltr"==e?"right":"left":"center"}},{key:"_computePositionFromOrigin",value:function(e){var t=this._getLayoutDirection();return"ltr"==t&&e<=0||"rtl"==t&&e>0?"left-origin-center":"right-origin-center"}}]),e}();return e.\u0275fac=function(t){return new(t||e)(f.Y36(f.SBq),f.Y36(O.Is,8),f.Y36(f.sBO))},e.\u0275dir=f.lG2({type:e,inputs:{animationDuration:"animationDuration",position:"position",_content:["content","_content"],origin:"origin"},outputs:{_onCentering:"_onCentering",_beforeCentering:"_beforeCentering",_afterLeavingCenter:"_afterLeavingCenter",_onCentered:"_onCentered"}}),e}(),oe=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r){return(0,l.Z)(this,n),t.call(this,e,i,r)}return n}(re);return e.\u0275fac=function(t){return new(t||e)(f.Y36(f.SBq),f.Y36(O.Is,8),f.Y36(f.sBO))},e.\u0275cmp=f.Xpm({type:e,selectors:[["mat-tab-body"]],viewQuery:function(e,t){var n;1&e&&f.Gf(h.Pl,5),2&e&&f.iGM(n=f.CRH())&&(t._portalHost=n.first)},hostAttrs:[1,"mat-tab-body"],features:[f.qOj],decls:3,vars:6,consts:[["cdkScrollable","",1,"mat-tab-body-content"],["content",""],["matTabBodyHost",""]],template:function(e,t){1&e&&(f.TgZ(0,"div",0,1),f.NdJ("@translateTab.start",function(e){return t._onTranslateTabStarted(e)})("@translateTab.done",function(e){return t._translateTabComplete.next(e)}),f.YNc(2,q,0,0,"ng-template",2),f.qZA()),2&e&&f.Q6J("@translateTab",f.WLB(3,D,t._position,f.VKq(1,N,t.animationDuration)))},directives:[ie],styles:[".mat-tab-body-content{height:100%;overflow:auto}.mat-tab-group-dynamic-height .mat-tab-body-content{overflow:hidden}\n"],encapsulation:2,data:{animation:[ne.translateTab]}}),e}(),ae=new f.OlP("MAT_TABS_CONFIG"),se=0,le=function e(){(0,l.Z)(this,e)},ce=(0,m.pj)((0,m.Kr)(function(){return function e(t){(0,l.Z)(this,e),this._elementRef=t}}()),"primary"),ue=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r,o){var a,s;return(0,l.Z)(this,n),(a=t.call(this,e))._changeDetectorRef=i,a._animationMode=o,a._tabs=new f.n_E,a._indexToSelect=0,a._tabBodyWrapperHeight=0,a._tabsSubscription=y.w.EMPTY,a._tabLabelSubscription=y.w.EMPTY,a._selectedIndex=null,a.headerPosition="above",a.selectedIndexChange=new f.vpe,a.focusChange=new f.vpe,a.animationDone=new f.vpe,a.selectedTabChange=new f.vpe(!0),a._groupId=se++,a.animationDuration=r&&r.animationDuration?r.animationDuration:"500ms",a.disablePagination=!(!r||null==r.disablePagination)&&r.disablePagination,a.dynamicHeight=!(!r||null==r.dynamicHeight)&&r.dynamicHeight,a.contentTabIndex=null!==(s=null==r?void 0:r.contentTabIndex)&&void 0!==s?s:null,a}return(0,c.Z)(n,[{key:"dynamicHeight",get:function(){return this._dynamicHeight},set:function(e){this._dynamicHeight=(0,A.Ig)(e)}},{key:"selectedIndex",get:function(){return this._selectedIndex},set:function(e){this._indexToSelect=(0,A.su)(e,null)}},{key:"animationDuration",get:function(){return this._animationDuration},set:function(e){this._animationDuration=/^\d+$/.test(e)?e+"ms":e}},{key:"contentTabIndex",get:function(){return this._contentTabIndex},set:function(e){this._contentTabIndex=(0,A.su)(e,null)}},{key:"backgroundColor",get:function(){return this._backgroundColor},set:function(e){var t=this._elementRef.nativeElement;t.classList.remove("mat-background-".concat(this.backgroundColor)),e&&t.classList.add("mat-background-".concat(e)),this._backgroundColor=e}},{key:"ngAfterContentChecked",value:function(){var e=this,t=this._indexToSelect=this._clampTabIndex(this._indexToSelect);if(this._selectedIndex!=t){var n=null==this._selectedIndex;if(!n){this.selectedTabChange.emit(this._createChangeEvent(t));var i=this._tabBodyWrapper.nativeElement;i.style.minHeight=i.clientHeight+"px"}Promise.resolve().then(function(){e._tabs.forEach(function(e,n){return e.isActive=n===t}),n||(e.selectedIndexChange.emit(t),e._tabBodyWrapper.nativeElement.style.minHeight="")})}this._tabs.forEach(function(n,i){n.position=i-t,null==e._selectedIndex||0!=n.position||n.origin||(n.origin=t-e._selectedIndex)}),this._selectedIndex!==t&&(this._selectedIndex=t,this._changeDetectorRef.markForCheck())}},{key:"ngAfterContentInit",value:function(){var e=this;this._subscribeToAllTabChanges(),this._subscribeToTabLabels(),this._tabsSubscription=this._tabs.changes.subscribe(function(){if(e._clampTabIndex(e._indexToSelect)===e._selectedIndex)for(var t=e._tabs.toArray(),n=0;n.mat-tab-header .mat-tab-label{flex-basis:0;flex-grow:1}.mat-tab-body-wrapper{position:relative;overflow:hidden;display:flex;transition:height 500ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable.mat-tab-body-wrapper{transition:none;animation:none}.mat-tab-body{top:0;left:0;right:0;bottom:0;position:absolute;display:block;overflow:hidden;outline:0;flex-basis:100%}.mat-tab-body.mat-tab-body-active{position:relative;overflow-x:hidden;overflow-y:auto;z-index:1;flex-grow:1}.mat-tab-group.mat-tab-group-dynamic-height .mat-tab-body.mat-tab-body-active{overflow-y:hidden}\n"],encapsulation:2}),e}(),he=(0,m.Id)(function(){return function e(){(0,l.Z)(this,e)}}()),pe=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e){var i;return(0,l.Z)(this,n),(i=t.call(this)).elementRef=e,i}return(0,c.Z)(n,[{key:"focus",value:function(){this.elementRef.nativeElement.focus()}},{key:"getOffsetLeft",value:function(){return this.elementRef.nativeElement.offsetLeft}},{key:"getOffsetWidth",value:function(){return this.elementRef.nativeElement.offsetWidth}}]),n}(he);return e.\u0275fac=function(t){return new(t||e)(f.Y36(f.SBq))},e.\u0275dir=f.lG2({type:e,selectors:[["","matTabLabelWrapper",""]],hostVars:3,hostBindings:function(e,t){2&e&&(f.uIk("aria-disabled",!!t.disabled),f.ekj("mat-tab-disabled",t.disabled))},inputs:{disabled:"disabled"},features:[f.qOj]}),e}(),fe=(0,Z.i$)({passive:!0}),me=function(){var e=function(){function e(t,n,i,r,o,a,s){var c=this;(0,l.Z)(this,e),this._elementRef=t,this._changeDetectorRef=n,this._viewportRuler=i,this._dir=r,this._ngZone=o,this._platform=a,this._animationMode=s,this._scrollDistance=0,this._selectedIndexChanged=!1,this._destroyed=new v.xQ,this._showPaginationControls=!1,this._disableScrollAfter=!0,this._disableScrollBefore=!0,this._stopScrolling=new v.xQ,this.disablePagination=!1,this._selectedIndex=0,this.selectFocusedIndex=new f.vpe,this.indexFocused=new f.vpe,o.runOutsideAngular(function(){(0,b.R)(t.nativeElement,"mouseleave").pipe((0,T.R)(c._destroyed)).subscribe(function(){c._stopInterval()})})}return(0,c.Z)(e,[{key:"selectedIndex",get:function(){return this._selectedIndex},set:function(e){e=(0,A.su)(e),this._selectedIndex!=e&&(this._selectedIndexChanged=!0,this._selectedIndex=e,this._keyManager&&this._keyManager.updateActiveItem(e))}},{key:"ngAfterViewInit",value:function(){var e=this;(0,b.R)(this._previousPaginator.nativeElement,"touchstart",fe).pipe((0,T.R)(this._destroyed)).subscribe(function(){e._handlePaginatorPress("before")}),(0,b.R)(this._nextPaginator.nativeElement,"touchstart",fe).pipe((0,T.R)(this._destroyed)).subscribe(function(){e._handlePaginatorPress("after")})}},{key:"ngAfterContentInit",value:function(){var e=this,t=this._dir?this._dir.change:(0,w.of)("ltr"),n=this._viewportRuler.change(150),i=function(){e.updatePagination(),e._alignInkBarToSelectedTab()};this._keyManager=new u.Em(this._items).withHorizontalOrientation(this._getLayoutDirection()).withHomeAndEnd().withWrap(),this._keyManager.updateActiveItem(this._selectedIndex),"undefined"!=typeof requestAnimationFrame?requestAnimationFrame(i):i(),(0,_.T)(t,n,this._items.changes).pipe((0,T.R)(this._destroyed)).subscribe(function(){e._ngZone.run(function(){return Promise.resolve().then(i)}),e._keyManager.withHorizontalOrientation(e._getLayoutDirection())}),this._keyManager.change.pipe((0,T.R)(this._destroyed)).subscribe(function(t){e.indexFocused.emit(t),e._setTabFocus(t)})}},{key:"ngAfterContentChecked",value:function(){this._tabLabelCount!=this._items.length&&(this.updatePagination(),this._tabLabelCount=this._items.length,this._changeDetectorRef.markForCheck()),this._selectedIndexChanged&&(this._scrollToLabel(this._selectedIndex),this._checkScrollingControls(),this._alignInkBarToSelectedTab(),this._selectedIndexChanged=!1,this._changeDetectorRef.markForCheck()),this._scrollDistanceChanged&&(this._updateTabScrollPosition(),this._scrollDistanceChanged=!1,this._changeDetectorRef.markForCheck())}},{key:"ngOnDestroy",value:function(){this._destroyed.next(),this._destroyed.complete(),this._stopScrolling.complete()}},{key:"_handleKeydown",value:function(e){if(!(0,M.Vb)(e))switch(e.keyCode){case M.K5:case M.L_:this.focusIndex!==this.selectedIndex&&(this.selectFocusedIndex.emit(this.focusIndex),this._itemSelected(e));break;default:this._keyManager.onKeydown(e)}}},{key:"_onContentChanges",value:function(){var e=this,t=this._elementRef.nativeElement.textContent;t!==this._currentTextContent&&(this._currentTextContent=t||"",this._ngZone.run(function(){e.updatePagination(),e._alignInkBarToSelectedTab(),e._changeDetectorRef.markForCheck()}))}},{key:"updatePagination",value:function(){this._checkPaginationEnabled(),this._checkScrollingControls(),this._updateTabScrollPosition()}},{key:"focusIndex",get:function(){return this._keyManager?this._keyManager.activeItemIndex:0},set:function(e){this._isValidIndex(e)&&this.focusIndex!==e&&this._keyManager&&this._keyManager.setActiveItem(e)}},{key:"_isValidIndex",value:function(e){if(!this._items)return!0;var t=this._items?this._items.toArray()[e]:null;return!!t&&!t.disabled}},{key:"_setTabFocus",value:function(e){if(this._showPaginationControls&&this._scrollToLabel(e),this._items&&this._items.length){this._items.toArray()[e].focus();var t=this._tabListContainer.nativeElement,n=this._getLayoutDirection();t.scrollLeft="ltr"==n?0:t.scrollWidth-t.offsetWidth}}},{key:"_getLayoutDirection",value:function(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}},{key:"_updateTabScrollPosition",value:function(){if(!this.disablePagination){var e=this.scrollDistance,t="ltr"===this._getLayoutDirection()?-e:e;this._tabList.nativeElement.style.transform="translateX(".concat(Math.round(t),"px)"),(this._platform.TRIDENT||this._platform.EDGE)&&(this._tabListContainer.nativeElement.scrollLeft=0)}}},{key:"scrollDistance",get:function(){return this._scrollDistance},set:function(e){this._scrollTo(e)}},{key:"_scrollHeader",value:function(e){return this._scrollTo(this._scrollDistance+("before"==e?-1:1)*this._tabListContainer.nativeElement.offsetWidth/3)}},{key:"_handlePaginatorClick",value:function(e){this._stopInterval(),this._scrollHeader(e)}},{key:"_scrollToLabel",value:function(e){if(!this.disablePagination){var t=this._items?this._items.toArray()[e]:null;if(t){var n,i,r=this._tabListContainer.nativeElement.offsetWidth,o=t.elementRef.nativeElement,a=o.offsetLeft,s=o.offsetWidth;"ltr"==this._getLayoutDirection()?i=(n=a)+s:n=(i=this._tabList.nativeElement.offsetWidth-a)-s;var l=this.scrollDistance,c=this.scrollDistance+r;nc&&(this.scrollDistance+=i-c+60)}}}},{key:"_checkPaginationEnabled",value:function(){if(this.disablePagination)this._showPaginationControls=!1;else{var e=this._tabList.nativeElement.scrollWidth>this._elementRef.nativeElement.offsetWidth;e||(this.scrollDistance=0),e!==this._showPaginationControls&&this._changeDetectorRef.markForCheck(),this._showPaginationControls=e}}},{key:"_checkScrollingControls",value:function(){this.disablePagination?this._disableScrollAfter=this._disableScrollBefore=!0:(this._disableScrollBefore=0==this.scrollDistance,this._disableScrollAfter=this.scrollDistance==this._getMaxScrollDistance(),this._changeDetectorRef.markForCheck())}},{key:"_getMaxScrollDistance",value:function(){return this._tabList.nativeElement.scrollWidth-this._tabListContainer.nativeElement.offsetWidth||0}},{key:"_alignInkBarToSelectedTab",value:function(){var e=this._items&&this._items.length?this._items.toArray()[this.selectedIndex]:null,t=e?e.elementRef.nativeElement:null;t?this._inkBar.alignToElement(t):this._inkBar.hide()}},{key:"_stopInterval",value:function(){this._stopScrolling.next()}},{key:"_handlePaginatorPress",value:function(e,t){var n=this;t&&null!=t.button&&0!==t.button||(this._stopInterval(),(0,S.H)(650,100).pipe((0,T.R)((0,_.T)(this._stopScrolling,this._destroyed))).subscribe(function(){var t=n._scrollHeader(e),i=t.distance;(0===i||i>=t.maxScrollDistance)&&n._stopInterval()}))}},{key:"_scrollTo",value:function(e){if(this.disablePagination)return{maxScrollDistance:0,distance:0};var t=this._getMaxScrollDistance();return this._scrollDistance=Math.max(0,Math.min(t,e)),this._scrollDistanceChanged=!0,this._checkScrollingControls(),{maxScrollDistance:t,distance:this._scrollDistance}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(f.Y36(f.SBq),f.Y36(f.sBO),f.Y36(E.rL),f.Y36(O.Is,8),f.Y36(f.R0b),f.Y36(Z.t4),f.Y36(g.Qb,8))},e.\u0275dir=f.lG2({type:e,inputs:{disablePagination:"disablePagination"}}),e}(),ge=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r,o,a,s,c){var u;return(0,l.Z)(this,n),(u=t.call(this,e,i,r,o,a,s,c))._disableRipple=!1,u}return(0,c.Z)(n,[{key:"disableRipple",get:function(){return this._disableRipple},set:function(e){this._disableRipple=(0,A.Ig)(e)}},{key:"_itemSelected",value:function(e){e.preventDefault()}}]),n}(me);return e.\u0275fac=function(t){return new(t||e)(f.Y36(f.SBq),f.Y36(f.sBO),f.Y36(E.rL),f.Y36(O.Is,8),f.Y36(f.R0b),f.Y36(Z.t4),f.Y36(g.Qb,8))},e.\u0275dir=f.lG2({type:e,inputs:{disableRipple:"disableRipple"},features:[f.qOj]}),e}(),ve=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r,o,a,s,c){return(0,l.Z)(this,n),t.call(this,e,i,r,o,a,s,c)}return n}(ge);return e.\u0275fac=function(t){return new(t||e)(f.Y36(f.SBq),f.Y36(f.sBO),f.Y36(E.rL),f.Y36(O.Is,8),f.Y36(f.R0b),f.Y36(Z.t4),f.Y36(g.Qb,8))},e.\u0275cmp=f.Xpm({type:e,selectors:[["mat-tab-header"]],contentQueries:function(e,t,n){var i;1&e&&f.Suo(n,pe,4),2&e&&f.iGM(i=f.CRH())&&(t._items=i)},viewQuery:function(e,t){var n;1&e&&(f.Gf(V,7),f.Gf(H,7),f.Gf(Y,7),f.Gf(J,5),f.Gf(G,5)),2&e&&(f.iGM(n=f.CRH())&&(t._inkBar=n.first),f.iGM(n=f.CRH())&&(t._tabListContainer=n.first),f.iGM(n=f.CRH())&&(t._tabList=n.first),f.iGM(n=f.CRH())&&(t._nextPaginator=n.first),f.iGM(n=f.CRH())&&(t._previousPaginator=n.first))},hostAttrs:[1,"mat-tab-header"],hostVars:4,hostBindings:function(e,t){2&e&&f.ekj("mat-tab-header-pagination-controls-enabled",t._showPaginationControls)("mat-tab-header-rtl","rtl"==t._getLayoutDirection())},inputs:{selectedIndex:"selectedIndex"},outputs:{selectFocusedIndex:"selectFocusedIndex",indexFocused:"indexFocused"},features:[f.qOj],ngContentSelectors:I,decls:13,vars:8,consts:[["aria-hidden","true","mat-ripple","",1,"mat-tab-header-pagination","mat-tab-header-pagination-before","mat-elevation-z4",3,"matRippleDisabled","click","mousedown","touchend"],["previousPaginator",""],[1,"mat-tab-header-pagination-chevron"],[1,"mat-tab-label-container",3,"keydown"],["tabListContainer",""],["role","tablist",1,"mat-tab-list",3,"cdkObserveContent"],["tabList",""],[1,"mat-tab-labels"],["aria-hidden","true","mat-ripple","",1,"mat-tab-header-pagination","mat-tab-header-pagination-after","mat-elevation-z4",3,"matRippleDisabled","mousedown","click","touchend"],["nextPaginator",""]],template:function(e,t){1&e&&(f.F$t(),f.TgZ(0,"div",0,1),f.NdJ("click",function(){return t._handlePaginatorClick("before")})("mousedown",function(e){return t._handlePaginatorPress("before",e)})("touchend",function(){return t._stopInterval()}),f._UZ(2,"div",2),f.qZA(),f.TgZ(3,"div",3,4),f.NdJ("keydown",function(e){return t._handleKeydown(e)}),f.TgZ(5,"div",5,6),f.NdJ("cdkObserveContent",function(){return t._onContentChanges()}),f.TgZ(7,"div",7),f.Hsn(8),f.qZA(),f._UZ(9,"mat-ink-bar"),f.qZA(),f.qZA(),f.TgZ(10,"div",8,9),f.NdJ("mousedown",function(e){return t._handlePaginatorPress("after",e)})("click",function(){return t._handlePaginatorClick("after")})("touchend",function(){return t._stopInterval()}),f._UZ(12,"div",2),f.qZA()),2&e&&(f.ekj("mat-tab-header-pagination-disabled",t._disableScrollBefore),f.Q6J("matRippleDisabled",t._disableScrollBefore||t.disableRipple),f.xp6(5),f.ekj("_mat-animation-noopable","NoopAnimations"===t._animationMode),f.xp6(5),f.ekj("mat-tab-header-pagination-disabled",t._disableScrollAfter),f.Q6J("matRippleDisabled",t._disableScrollAfter||t.disableRipple))},directives:[m.wG,d.wD,V],styles:['.mat-tab-header{display:flex;overflow:hidden;position:relative;flex-shrink:0}.mat-tab-header-pagination{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;display:none;justify-content:center;align-items:center;min-width:32px;cursor:pointer;z-index:2;-webkit-tap-highlight-color:transparent;touch-action:none}.mat-tab-header-pagination-controls-enabled .mat-tab-header-pagination{display:flex}.mat-tab-header-pagination-before,.mat-tab-header-rtl .mat-tab-header-pagination-after{padding-left:4px}.mat-tab-header-pagination-before .mat-tab-header-pagination-chevron,.mat-tab-header-rtl .mat-tab-header-pagination-after .mat-tab-header-pagination-chevron{transform:rotate(-135deg)}.mat-tab-header-rtl .mat-tab-header-pagination-before,.mat-tab-header-pagination-after{padding-right:4px}.mat-tab-header-rtl .mat-tab-header-pagination-before .mat-tab-header-pagination-chevron,.mat-tab-header-pagination-after .mat-tab-header-pagination-chevron{transform:rotate(45deg)}.mat-tab-header-pagination-chevron{border-style:solid;border-width:2px 2px 0 0;content:"";height:8px;width:8px}.mat-tab-header-pagination-disabled{box-shadow:none;cursor:default}.mat-tab-list{flex-grow:1;position:relative;transition:transform 500ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-ink-bar{position:absolute;bottom:0;height:2px;transition:500ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable.mat-ink-bar{transition:none;animation:none}.mat-tab-group-inverted-header .mat-ink-bar{bottom:auto;top:0}.cdk-high-contrast-active .mat-ink-bar{outline:solid 2px;height:0}.mat-tab-labels{display:flex}[mat-align-tabs=center]>.mat-tab-header .mat-tab-labels{justify-content:center}[mat-align-tabs=end]>.mat-tab-header .mat-tab-labels{justify-content:flex-end}.mat-tab-label-container{display:flex;flex-grow:1;overflow:hidden;z-index:1}._mat-animation-noopable.mat-tab-list{transition:none;animation:none}.mat-tab-label{height:48px;padding:0 24px;cursor:pointer;box-sizing:border-box;opacity:.6;min-width:160px;text-align:center;display:inline-flex;justify-content:center;align-items:center;white-space:nowrap;position:relative}.mat-tab-label:focus{outline:none}.mat-tab-label:focus:not(.mat-tab-disabled){opacity:1}.cdk-high-contrast-active .mat-tab-label:focus{outline:dotted 2px;outline-offset:-2px}.mat-tab-label.mat-tab-disabled{cursor:default}.cdk-high-contrast-active .mat-tab-label.mat-tab-disabled{opacity:.5}.mat-tab-label .mat-tab-label-content{display:inline-flex;justify-content:center;align-items:center;white-space:nowrap}.cdk-high-contrast-active .mat-tab-label{opacity:1}@media(max-width: 599px){.mat-tab-label{min-width:72px}}\n'],encapsulation:2}),e}(),ye=function(){var e=function e(){(0,l.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=f.oAB({type:e}),e.\u0275inj=f.cJS({imports:[[p.ez,m.BQ,h.eL,m.si,d.Q8,u.rt],m.BQ]}),e}()},38480:function(e,t,n){"use strict";n.d(t,{Qb:function(){return Wt},PW:function(){return Kt}});var i=n(10270),r=n(61680),o=n(11254),a=n(49843),s=n(37859),l=n(37602),c=n(29176),u=n(739),d=n(51751),h=n(12558),p=n(20454),f=n(25801);function m(){return"undefined"!=typeof window&&void 0!==window.document}function g(){return"undefined"!=typeof process&&"[object process]"==={}.toString.call(process)}function v(e){switch(e.length){case 0:return new u.ZN;case 1:return e[0];default:return new u.ZE(e)}}function y(e,t,n,i){var r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},a=[],s=[],l=-1,c=null;if(i.forEach(function(e){var n=e.offset,i=n==l,d=i&&c||{};Object.keys(e).forEach(function(n){var i=n,s=e[n];if("offset"!==n)switch(i=t.normalizePropertyName(i,a),s){case u.k1:s=r[n];break;case u.l3:s=o[n];break;default:s=t.normalizeStyleValue(n,i,s,a)}d[i]=s}),i||s.push(d),c=d,l=n}),a.length){var d="\n - ";throw new Error("Unable to animate due to the following errors:".concat(d).concat(a.join(d)))}return s}function _(e,t,n,i){switch(t){case"start":e.onStart(function(){return i(n&&b(n,"start",e))});break;case"done":e.onDone(function(){return i(n&&b(n,"done",e))});break;case"destroy":e.onDestroy(function(){return i(n&&b(n,"destroy",e))})}}function b(e,t,n){var i=n.totalTime,r=w(e.element,e.triggerName,e.fromState,e.toState,t||e.phaseName,null==i?e.totalTime:i,!!n.disabled),o=e._data;return null!=o&&(r._data=o),r}function w(e,t,n,i){var r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"",o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0,a=arguments.length>6?arguments[6]:void 0;return{element:e,triggerName:t,fromState:n,toState:i,phaseName:r,totalTime:o,disabled:!!a}}function S(e,t,n){var i;return e instanceof Map?(i=e.get(t))||e.set(t,i=n):(i=e[t])||(i=e[t]=n),i}function x(e){var t=e.indexOf(":");return[e.substring(1,t),e.substr(t+1)]}var C=function(e,t){return!1},k=function(e,t){return!1},T=function(e,t,n){return[]},A=g();(A||"undefined"!=typeof Element)&&(C=m()?function(e,t){for(;t&&t!==document.documentElement;){if(t===e)return!0;t=t.parentNode||t.host}return!1}:function(e,t){return e.contains(t)},k=function(){if(A||Element.prototype.matches)return function(e,t){return e.matches(t)};var e=Element.prototype,t=e.matchesSelector||e.mozMatchesSelector||e.msMatchesSelector||e.oMatchesSelector||e.webkitMatchesSelector;return t?function(e,n){return t.apply(e,[n])}:k}(),T=function(e,t,n){var i=[];if(n)for(var r=e.querySelectorAll(t),o=0;o1&&void 0!==arguments[1]?arguments[1]:{};return Object.keys(e).forEach(function(n){t[n]=e[n]}),t}function G(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(t)for(var i in e)n[i]=e[i];else J(e,n);return n}function W(e,t,n){return n?t+":"+n+";":""}function V(e){for(var t="",n=0;n *";case":leave":return"* => void";case":increment":return function(e,t){return parseFloat(t)>parseFloat(e)};case":decrement":return function(e,t){return parseFloat(t) *"}}(e,n);if("function"==typeof i)return void t.push(i);e=i}var r=e.match(/^(\*|[-\w]+)\s*()\s*(\*|[-\w]+)$/);if(null==r||r.length<4)return n.push('The provided transition expression "'.concat(e,'" is not supported')),t;var o=r[1],a=r[2],s=r[3];t.push(he(o,s)),"<"!=a[0]||o==ce&&s==ce||t.push(he(s,o))}(e,r,i)}):r.push(n),r),animation:o,queryCount:t.queryCount,depCount:t.depCount,options:_e(e.options)}}},{key:"visitSequence",value:function(e,t){var n=this;return{type:2,steps:e.steps.map(function(e){return se(n,e,t)}),options:_e(e.options)}}},{key:"visitGroup",value:function(e,t){var n=this,i=t.currentTime,r=0,o=e.steps.map(function(e){t.currentTime=i;var o=se(n,e,t);return r=Math.max(r,t.currentTime),o});return t.currentTime=r,{type:3,steps:o,options:_e(e.options)}}},{key:"visitAnimate",value:function(e,t){var n,i=function(e,t){var n=null;if(e.hasOwnProperty("duration"))n=e;else if("number"==typeof e)return be(Y(e,t).duration,0,"");var i=e;if(i.split(/\s+/).some(function(e){return"{"==e.charAt(0)&&"{"==e.charAt(1)})){var r=be(0,0,"");return r.dynamic=!0,r.strValue=i,r}return be((n=n||Y(i,t)).duration,n.delay,n.easing)}(e.timings,t.errors);t.currentAnimateTimings=i;var r=e.styles?e.styles:(0,u.oB)({});if(5==r.type)n=this.visitKeyframes(r,t);else{var o=e.styles,a=!1;if(!o){a=!0;var s={};i.easing&&(s.easing=i.easing),o=(0,u.oB)(s)}t.currentTime+=i.duration+i.delay;var l=this.visitStyle(o,t);l.isEmptyStep=a,n=l}return t.currentAnimateTimings=null,{type:4,timings:i,style:n,options:null}}},{key:"visitStyle",value:function(e,t){var n=this._makeStyleAst(e,t);return this._validateStyleAst(n,t),n}},{key:"_makeStyleAst",value:function(e,t){var n=[];Array.isArray(e.styles)?e.styles.forEach(function(e){"string"==typeof e?e==u.l3?n.push(e):t.errors.push("The provided style string value ".concat(e," is not allowed.")):n.push(e)}):n.push(e.styles);var i=!1,r=null;return n.forEach(function(e){if(ye(e)){var t=e,n=t.easing;if(n&&(r=n,delete t.easing),!i)for(var o in t)if(t[o].toString().indexOf("{{")>=0){i=!0;break}}}),{type:6,styles:n,easing:r,offset:e.offset,containsDynamicStyles:i,options:null}}},{key:"_validateStyleAst",value:function(e,t){var n=this,i=t.currentAnimateTimings,r=t.currentTime,o=t.currentTime;i&&o>0&&(o-=i.duration+i.delay),e.styles.forEach(function(e){"string"!=typeof e&&Object.keys(e).forEach(function(i){if(n._driver.validateStyleProperty(i)){var a,s,l,c=t.collectedStyles[t.currentQuerySelector],u=c[i],d=!0;u&&(o!=r&&o>=u.startTime&&r<=u.endTime&&(t.errors.push('The CSS property "'.concat(i,'" that exists between the times of "').concat(u.startTime,'ms" and "').concat(u.endTime,'ms" is also being animated in a parallel animation between the times of "').concat(o,'ms" and "').concat(r,'ms"')),d=!1),o=u.startTime),d&&(c[i]={startTime:o,endTime:r}),t.options&&(a=t.errors,s=t.options.params||{},(l=ee(e[i])).length&&l.forEach(function(e){s.hasOwnProperty(e)||a.push("Unable to resolve the local animation param ".concat(e," in the given list of values"))}))}else t.errors.push('The provided animation property "'.concat(i,'" is not a supported CSS property for animations'))})})}},{key:"visitKeyframes",value:function(e,t){var n=this,i={type:5,styles:[],options:null};if(!t.currentAnimateTimings)return t.errors.push("keyframes() must be placed inside of a call to animate()"),i;var r=0,o=[],a=!1,s=!1,l=0,c=e.steps.map(function(e){var i=n._makeStyleAst(e,t),c=null!=i.offset?i.offset:function(e){if("string"==typeof e)return null;var t=null;if(Array.isArray(e))e.forEach(function(e){if(ye(e)&&e.hasOwnProperty("offset")){var n=e;t=parseFloat(n.offset),delete n.offset}});else if(ye(e)&&e.hasOwnProperty("offset")){var n=e;t=parseFloat(n.offset),delete n.offset}return t}(i.styles),u=0;return null!=c&&(r++,u=i.offset=c),s=s||u<0||u>1,a=a||u0&&r0?r==h?1:d*r:o[r],s=a*m;t.currentTime=p+f.delay+s,f.duration=s,n._validateStyleAst(e,t),e.offset=a,i.styles.push(e)}),i}},{key:"visitReference",value:function(e,t){return{type:8,animation:se(this,K(e.animation),t),options:_e(e.options)}}},{key:"visitAnimateChild",value:function(e,t){return t.depCount++,{type:9,options:_e(e.options)}}},{key:"visitAnimateRef",value:function(e,t){return{type:10,animation:this.visitReference(e.animation,t),options:_e(e.options)}}},{key:"visitQuery",value:function(e,t){var n=t.currentQuerySelector,r=e.options||{};t.queryCount++,t.currentQuery=e;var o=function(e){var t=!!e.split(/\s*,\s*/).find(function(e){return e==pe});return t&&(e=e.replace(fe,"")),[e=e.replace(/@\*/g,B).replace(/@\w+/g,function(e){return".ng-trigger-"+e.substr(1)}).replace(/:animating/g,z),t]}(e.selector),a=(0,i.Z)(o,2),s=a[0],l=a[1];t.currentQuerySelector=n.length?n+" "+s:s,S(t.collectedStyles,t.currentQuerySelector,{});var c=se(this,K(e.animation),t);return t.currentQuery=null,t.currentQuerySelector=n,{type:11,selector:s,limit:r.limit||0,optional:!!r.optional,includeSelf:l,animation:c,originalSelector:e.selector,options:_e(e.options)}}},{key:"visitStagger",value:function(e,t){t.currentQuery||t.errors.push("stagger() can only be used inside of query()");var n="full"===e.timings?{duration:0,delay:0,easing:"full"}:Y(e.timings,t.errors,!0);return{type:12,animation:se(this,K(e.animation),t),timings:n,options:null}}}]),e}(),ve=function e(t){(0,r.Z)(this,e),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 ye(e){return!Array.isArray(e)&&"object"==typeof e}function _e(e){var t;return e?(e=J(e)).params&&(e.params=(t=e.params)?J(t):null):e={},e}function be(e,t,n){return{duration:e,delay:t,easing:n}}function we(e,t,n,i,r,o){var a=arguments.length>6&&void 0!==arguments[6]?arguments[6]:null,s=arguments.length>7&&void 0!==arguments[7]&&arguments[7];return{type:1,element:e,keyframes:t,preStyleProps:n,postStyleProps:i,duration:r,delay:o,totalTime:r+o,easing:a,subTimeline:s}}var Se=function(){function e(){(0,r.Z)(this,e),this._map=new Map}return(0,o.Z)(e,[{key:"consume",value:function(e){var t=this._map.get(e);return t?this._map.delete(e):t=[],t}},{key:"append",value:function(e,t){var n,i=this._map.get(e);i||this._map.set(e,i=[]),(n=i).push.apply(n,(0,f.Z)(t))}},{key:"has",value:function(e){return this._map.has(e)}},{key:"clear",value:function(){this._map.clear()}}]),e}(),xe=new RegExp(":enter","g"),Ce=new RegExp(":leave","g");function ke(e,t,n,i,r){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},a=arguments.length>6&&void 0!==arguments[6]?arguments[6]:{},s=arguments.length>7?arguments[7]:void 0,l=arguments.length>8?arguments[8]:void 0,c=arguments.length>9&&void 0!==arguments[9]?arguments[9]:[];return(new Te).buildKeyframes(e,t,n,i,r,o,a,s,l,c)}var Te=function(){function e(){(0,r.Z)(this,e)}return(0,o.Z)(e,[{key:"buildKeyframes",value:function(e,t,n,i,r,o,a,s,l){var c=arguments.length>9&&void 0!==arguments[9]?arguments[9]:[];l=l||new Se;var u=new Ze(e,t,l,i,r,c,[]);u.options=s,u.currentTimeline.setStyles([o],null,u.errors,s),se(this,n,u);var d=u.timelines.filter(function(e){return e.containsAnimation()});if(d.length&&Object.keys(a).length){var h=d[d.length-1];h.allowOnlyTimelineStyles()||h.setStyles([a],null,u.errors,s)}return d.length?d.map(function(e){return e.buildKeyframes()}):[we(t,[],[],[],0,0,"",!1)]}},{key:"visitTrigger",value:function(e,t){}},{key:"visitState",value:function(e,t){}},{key:"visitTransition",value:function(e,t){}},{key:"visitAnimateChild",value:function(e,t){var n=t.subInstructions.consume(t.element);if(n){var i=t.createSubContext(e.options),r=t.currentTimeline.currentTime,o=this._visitSubInstructions(n,i,i.options);r!=o&&t.transformIntoNewTimeline(o)}t.previousNode=e}},{key:"visitAnimateRef",value:function(e,t){var n=t.createSubContext(e.options);n.transformIntoNewTimeline(),this.visitReference(e.animation,n),t.transformIntoNewTimeline(n.currentTimeline.currentTime),t.previousNode=e}},{key:"_visitSubInstructions",value:function(e,t,n){var i=t.currentTimeline.currentTime,r=null!=n.duration?U(n.duration):null,o=null!=n.delay?U(n.delay):null;return 0!==r&&e.forEach(function(e){var n=t.appendInstructionToTimeline(e,r,o);i=Math.max(i,n.duration+n.delay)}),i}},{key:"visitReference",value:function(e,t){t.updateOptions(e.options,!0),se(this,e.animation,t),t.previousNode=e}},{key:"visitSequence",value:function(e,t){var n=this,i=t.subContextCount,r=t,o=e.options;if(o&&(o.params||o.delay)&&((r=t.createSubContext(o)).transformIntoNewTimeline(),null!=o.delay)){6==r.previousNode.type&&(r.currentTimeline.snapshotCurrentStyles(),r.previousNode=Ae);var a=U(o.delay);r.delayNextStep(a)}e.steps.length&&(e.steps.forEach(function(e){return se(n,e,r)}),r.currentTimeline.applyStylesToKeyframe(),r.subContextCount>i&&r.transformIntoNewTimeline()),t.previousNode=e}},{key:"visitGroup",value:function(e,t){var n=this,i=[],r=t.currentTimeline.currentTime,o=e.options&&e.options.delay?U(e.options.delay):0;e.steps.forEach(function(a){var s=t.createSubContext(e.options);o&&s.delayNextStep(o),se(n,a,s),r=Math.max(r,s.currentTimeline.currentTime),i.push(s.currentTimeline)}),i.forEach(function(e){return t.currentTimeline.mergeTimelineCollectedStyles(e)}),t.transformIntoNewTimeline(r),t.previousNode=e}},{key:"_visitTiming",value:function(e,t){if(e.dynamic){var n=e.strValue;return Y(t.params?te(n,t.params,t.errors):n,t.errors)}return{duration:e.duration,delay:e.delay,easing:e.easing}}},{key:"visitAnimate",value:function(e,t){var n=t.currentAnimateTimings=this._visitTiming(e.timings,t),i=t.currentTimeline;n.delay&&(t.incrementTime(n.delay),i.snapshotCurrentStyles());var r=e.style;5==r.type?this.visitKeyframes(r,t):(t.incrementTime(n.duration),this.visitStyle(r,t),i.applyStylesToKeyframe()),t.currentAnimateTimings=null,t.previousNode=e}},{key:"visitStyle",value:function(e,t){var n=t.currentTimeline,i=t.currentAnimateTimings;!i&&n.getCurrentStyleProperties().length&&n.forwardFrame();var r=i&&i.easing||e.easing;e.isEmptyStep?n.applyEmptyStep(r):n.setStyles(e.styles,r,t.errors,t.options),t.previousNode=e}},{key:"visitKeyframes",value:function(e,t){var n=t.currentAnimateTimings,i=t.currentTimeline.duration,r=n.duration,o=t.createSubContext().currentTimeline;o.easing=n.easing,e.styles.forEach(function(e){o.forwardTime((e.offset||0)*r),o.setStyles(e.styles,e.easing,t.errors,t.options),o.applyStylesToKeyframe()}),t.currentTimeline.mergeTimelineCollectedStyles(o),t.transformIntoNewTimeline(i+r),t.previousNode=e}},{key:"visitQuery",value:function(e,t){var n=this,i=t.currentTimeline.currentTime,r=e.options||{},o=r.delay?U(r.delay):0;o&&(6===t.previousNode.type||0==i&&t.currentTimeline.getCurrentStyleProperties().length)&&(t.currentTimeline.snapshotCurrentStyles(),t.previousNode=Ae);var a=i,s=t.invokeQuery(e.selector,e.originalSelector,e.limit,e.includeSelf,!!r.optional,t.errors);t.currentQueryTotal=s.length;var l=null;s.forEach(function(i,r){t.currentQueryIndex=r;var s=t.createSubContext(e.options,i);o&&s.delayNextStep(o),i===t.element&&(l=s.currentTimeline),se(n,e.animation,s),s.currentTimeline.applyStylesToKeyframe(),a=Math.max(a,s.currentTimeline.currentTime)}),t.currentQueryIndex=0,t.currentQueryTotal=0,t.transformIntoNewTimeline(a),l&&(t.currentTimeline.mergeTimelineCollectedStyles(l),t.currentTimeline.snapshotCurrentStyles()),t.previousNode=e}},{key:"visitStagger",value:function(e,t){var n=t.parentContext,i=t.currentTimeline,r=e.timings,o=Math.abs(r.duration),a=o*(t.currentQueryTotal-1),s=o*t.currentQueryIndex;switch(r.duration<0?"reverse":r.easing){case"reverse":s=a-s;break;case"full":s=n.currentStaggerTime}var l=t.currentTimeline;s&&l.delayNextStep(s);var c=l.currentTime;se(this,e.animation,t),t.previousNode=e,n.currentStaggerTime=i.currentTime-c+(i.startTime-n.currentTimeline.startTime)}}]),e}(),Ae={},Ze=function(){function e(t,n,i,o,a,s,l,c){(0,r.Z)(this,e),this._driver=t,this.element=n,this.subInstructions=i,this._enterClassName=o,this._leaveClassName=a,this.errors=s,this.timelines=l,this.parentContext=null,this.currentAnimateTimings=null,this.previousNode=Ae,this.subContextCount=0,this.options={},this.currentQueryIndex=0,this.currentQueryTotal=0,this.currentStaggerTime=0,this.currentTimeline=c||new Me(this._driver,n,0),l.push(this.currentTimeline)}return(0,o.Z)(e,[{key:"params",get:function(){return this.options.params}},{key:"updateOptions",value:function(e,t){var n=this;if(e){var i=e,r=this.options;null!=i.duration&&(r.duration=U(i.duration)),null!=i.delay&&(r.delay=U(i.delay));var o=i.params;if(o){var a=r.params;a||(a=this.options.params={}),Object.keys(o).forEach(function(e){t&&a.hasOwnProperty(e)||(a[e]=te(o[e],a,n.errors))})}}}},{key:"_copyOptions",value:function(){var e={};if(this.options){var t=this.options.params;if(t){var n=e.params={};Object.keys(t).forEach(function(e){n[e]=t[e]})}}return e}},{key:"createSubContext",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,n=arguments.length>1?arguments[1]:void 0,i=arguments.length>2?arguments[2]:void 0,r=n||this.element,o=new e(this._driver,r,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(r,i||0));return o.previousNode=this.previousNode,o.currentAnimateTimings=this.currentAnimateTimings,o.options=this._copyOptions(),o.updateOptions(t),o.currentQueryIndex=this.currentQueryIndex,o.currentQueryTotal=this.currentQueryTotal,o.parentContext=this,this.subContextCount++,o}},{key:"transformIntoNewTimeline",value:function(e){return this.previousNode=Ae,this.currentTimeline=this.currentTimeline.fork(this.element,e),this.timelines.push(this.currentTimeline),this.currentTimeline}},{key:"appendInstructionToTimeline",value:function(e,t,n){var i={duration:null!=t?t:e.duration,delay:this.currentTimeline.currentTime+(null!=n?n:0)+e.delay,easing:""},r=new Oe(this._driver,e.element,e.keyframes,e.preStyleProps,e.postStyleProps,i,e.stretchStartingKeyframe);return this.timelines.push(r),i}},{key:"incrementTime",value:function(e){this.currentTimeline.forwardTime(this.currentTimeline.duration+e)}},{key:"delayNextStep",value:function(e){e>0&&this.currentTimeline.delayNextStep(e)}},{key:"invokeQuery",value:function(e,t,n,i,r,o){var a=[];if(i&&a.push(this.element),e.length>0){e=(e=e.replace(xe,"."+this._enterClassName)).replace(Ce,"."+this._leaveClassName);var s=this._driver.query(this.element,e,1!=n);0!==n&&(s=n<0?s.slice(s.length+n,s.length):s.slice(0,n)),a.push.apply(a,(0,f.Z)(s))}return r||0!=a.length||o.push('`query("'.concat(t,'")` returned zero elements. (Use `query("').concat(t,'", { optional: true })` if you wish to allow this.)')),a}}]),e}(),Me=function(){function e(t,n,i,o){(0,r.Z)(this,e),this._driver=t,this.element=n,this.startTime=i,this._elementTimelineStylesLookup=o,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(n),this._globalTimelineStyles||(this._globalTimelineStyles=this._localTimelineStyles,this._elementTimelineStylesLookup.set(n,this._localTimelineStyles)),this._loadKeyframe()}return(0,o.Z)(e,[{key:"containsAnimation",value:function(){switch(this._keyframes.size){case 0:return!1;case 1:return this.getCurrentStyleProperties().length>0;default:return!0}}},{key:"getCurrentStyleProperties",value:function(){return Object.keys(this._currentKeyframe)}},{key:"currentTime",get:function(){return this.startTime+this.duration}},{key:"delayNextStep",value:function(e){var t=1==this._keyframes.size&&Object.keys(this._pendingStyles).length;this.duration||t?(this.forwardTime(this.currentTime+e),t&&this.snapshotCurrentStyles()):this.startTime+=e}},{key:"fork",value:function(t,n){return this.applyStylesToKeyframe(),new e(this._driver,t,n||this.currentTime,this._elementTimelineStylesLookup)}},{key:"_loadKeyframe",value:function(){this._currentKeyframe&&(this._previousKeyframe=this._currentKeyframe),this._currentKeyframe=this._keyframes.get(this.duration),this._currentKeyframe||(this._currentKeyframe=Object.create(this._backFill,{}),this._keyframes.set(this.duration,this._currentKeyframe))}},{key:"forwardFrame",value:function(){this.duration+=1,this._loadKeyframe()}},{key:"forwardTime",value:function(e){this.applyStylesToKeyframe(),this.duration=e,this._loadKeyframe()}},{key:"_updateStyle",value:function(e,t){this._localTimelineStyles[e]=t,this._globalTimelineStyles[e]=t,this._styleSummary[e]={time:this.currentTime,value:t}}},{key:"allowOnlyTimelineStyles",value:function(){return this._currentEmptyStepKeyframe!==this._currentKeyframe}},{key:"applyEmptyStep",value:function(e){var t=this;e&&(this._previousKeyframe.easing=e),Object.keys(this._globalTimelineStyles).forEach(function(e){t._backFill[e]=t._globalTimelineStyles[e]||u.l3,t._currentKeyframe[e]=u.l3}),this._currentEmptyStepKeyframe=this._currentKeyframe}},{key:"setStyles",value:function(e,t,n,i){var r=this;t&&(this._previousKeyframe.easing=t);var o=i&&i.params||{},a=function(e,t){var n,i={};return e.forEach(function(e){"*"===e?(n=n||Object.keys(t)).forEach(function(e){i[e]=u.l3}):G(e,!1,i)}),i}(e,this._globalTimelineStyles);Object.keys(a).forEach(function(e){var t=te(a[e],o,n);r._pendingStyles[e]=t,r._localTimelineStyles.hasOwnProperty(e)||(r._backFill[e]=r._globalTimelineStyles.hasOwnProperty(e)?r._globalTimelineStyles[e]:u.l3),r._updateStyle(e,t)})}},{key:"applyStylesToKeyframe",value:function(){var e=this,t=this._pendingStyles,n=Object.keys(t);0!=n.length&&(this._pendingStyles={},n.forEach(function(n){e._currentKeyframe[n]=t[n]}),Object.keys(this._localTimelineStyles).forEach(function(t){e._currentKeyframe.hasOwnProperty(t)||(e._currentKeyframe[t]=e._localTimelineStyles[t])}))}},{key:"snapshotCurrentStyles",value:function(){var e=this;Object.keys(this._localTimelineStyles).forEach(function(t){var n=e._localTimelineStyles[t];e._pendingStyles[t]=n,e._updateStyle(t,n)})}},{key:"getFinalKeyframe",value:function(){return this._keyframes.get(this.duration)}},{key:"properties",get:function(){var e=[];for(var t in this._currentKeyframe)e.push(t);return e}},{key:"mergeTimelineCollectedStyles",value:function(e){var t=this;Object.keys(e._styleSummary).forEach(function(n){var i=t._styleSummary[n],r=e._styleSummary[n];(!i||r.time>i.time)&&t._updateStyle(n,r.value)})}},{key:"buildKeyframes",value:function(){var e=this;this.applyStylesToKeyframe();var t=new Set,n=new Set,i=1===this._keyframes.size&&0===this.duration,r=[];this._keyframes.forEach(function(o,a){var s=G(o,!0);Object.keys(s).forEach(function(e){var i=s[e];i==u.k1?t.add(e):i==u.l3&&n.add(e)}),i||(s.offset=a/e.duration),r.push(s)});var o=t.size?ne(t.values()):[],a=n.size?ne(n.values()):[];if(i){var s=r[0],l=J(s);s.offset=0,l.offset=1,r=[s,l]}return we(this.element,r,o,a,this.duration,this.startTime,this.easing,!1)}}]),e}(),Oe=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,o,a,s,l){var c,u=arguments.length>6&&void 0!==arguments[6]&&arguments[6];return(0,r.Z)(this,n),(c=t.call(this,e,i,l.delay)).keyframes=o,c.preStyleProps=a,c.postStyleProps=s,c._stretchStartingKeyframe=u,c.timings={duration:l.duration,delay:l.delay,easing:l.easing},c}return(0,o.Z)(n,[{key:"containsAnimation",value:function(){return this.keyframes.length>1}},{key:"buildKeyframes",value:function(){var e=this.keyframes,t=this.timings,n=t.delay,i=t.duration,r=t.easing;if(this._stretchStartingKeyframe&&n){var o=[],a=i+n,s=n/a,l=G(e[0],!1);l.offset=0,o.push(l);var c=G(e[0],!1);c.offset=Ee(s),o.push(c);for(var u=e.length-1,d=1;d<=u;d++){var h=G(e[d],!1);h.offset=Ee((n+h.offset*i)/a),o.push(h)}i=a,n=0,r="",e=o}return we(this.element,e,this.preStyleProps,this.postStyleProps,i,n,r,!0)}}]),n}(Me);function Ee(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:3,n=Math.pow(10,t-1);return Math.round(e*n)/n}var Pe=function e(){(0,r.Z)(this,e)},Ie=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(){return(0,r.Z)(this,n),t.apply(this,arguments)}return(0,o.Z)(n,[{key:"normalizePropertyName",value:function(e,t){return re(e)}},{key:"normalizeStyleValue",value:function(e,t,n,i){var r="",o=n.toString().trim();if(qe[t]&&0!==n&&"0"!==n)if("number"==typeof n)r="px";else{var a=n.match(/^[+-]?[\d\.]+([a-z]*)$/);a&&0==a[1].length&&i.push("Please provide a CSS unit value for ".concat(e,":").concat(n))}return o+r}}]),n}(Pe),qe=function(){return 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(","),t={},e.forEach(function(e){return t[e]=!0}),t;var e,t}();function Ne(e,t,n,i,r,o,a,s,l,c,u,d,h){return{type:0,element:e,triggerName:t,isRemovalTransition:r,fromState:n,fromStyles:o,toState:i,toStyles:a,timelines:s,queriedElements:l,preStyleProps:c,postStyleProps:u,totalTime:d,errors:h}}var De={},Re=function(){function e(t,n,i){(0,r.Z)(this,e),this._triggerName=t,this.ast=n,this._stateStyles=i}return(0,o.Z)(e,[{key:"match",value:function(e,t,n,i){return function(e,t,n,i,r){return e.some(function(e){return e(t,n,i,r)})}(this.ast.matchers,e,t,n,i)}},{key:"buildStyles",value:function(e,t,n){var i=this._stateStyles["*"],r=this._stateStyles[e],o=i?i.buildStyles(t,n):{};return r?r.buildStyles(t,n):o}},{key:"build",value:function(e,t,n,i,r,o,a,s,l,c){var u=[],d=this.ast.options&&this.ast.options.params||De,h=this.buildStyles(n,a&&a.params||De,u),p=s&&s.params||De,f=this.buildStyles(i,p,u),m=new Set,g=new Map,v=new Map,y="void"===i,_={params:Object.assign(Object.assign({},d),p)},b=c?[]:ke(e,t,this.ast.animation,r,o,h,f,_,l,u),w=0;if(b.forEach(function(e){w=Math.max(e.duration+e.delay,w)}),u.length)return Ne(t,this._triggerName,n,i,y,h,f,[],[],g,v,w,u);b.forEach(function(e){var n=e.element,i=S(g,n,{});e.preStyleProps.forEach(function(e){return i[e]=!0});var r=S(v,n,{});e.postStyleProps.forEach(function(e){return r[e]=!0}),n!==t&&m.add(n)});var x=ne(m.values());return Ne(t,this._triggerName,n,i,y,h,f,b,x,g,v,w)}}]),e}(),Le=function(){function e(t,n,i){(0,r.Z)(this,e),this.styles=t,this.defaultParams=n,this.normalizer=i}return(0,o.Z)(e,[{key:"buildStyles",value:function(e,t){var n=this,i={},r=J(this.defaultParams);return Object.keys(e).forEach(function(t){var n=e[t];null!=n&&(r[t]=n)}),this.styles.styles.forEach(function(e){if("string"!=typeof e){var o=e;Object.keys(o).forEach(function(e){var a=o[e];a.length>1&&(a=te(a,r,t));var s=n.normalizer.normalizePropertyName(e,t);a=n.normalizer.normalizeStyleValue(e,s,a,t),i[s]=a})}}),i}}]),e}(),Fe=function(){function e(t,n,i){var o=this;(0,r.Z)(this,e),this.name=t,this.ast=n,this._normalizer=i,this.transitionFactories=[],this.states={},n.states.forEach(function(e){o.states[e.name]=new Le(e.style,e.options&&e.options.params||{},i)}),Be(this.states,"true","1"),Be(this.states,"false","0"),n.transitions.forEach(function(e){o.transitionFactories.push(new Re(t,e,o.states))}),this.fallbackTransition=new Re(t,{type:1,animation:{type:2,steps:[],options:null},matchers:[function(e,t){return!0}],options:null,queryCount:0,depCount:0},this.states)}return(0,o.Z)(e,[{key:"containsQueries",get:function(){return this.ast.queryCount>0}},{key:"matchTransition",value:function(e,t,n,i){return this.transitionFactories.find(function(r){return r.match(e,t,n,i)})||null}},{key:"matchStyles",value:function(e,t,n){return this.fallbackTransition.buildStyles(e,t,n)}}]),e}();function Be(e,t,n){e.hasOwnProperty(t)?e.hasOwnProperty(n)||(e[n]=e[t]):e.hasOwnProperty(n)&&(e[t]=e[n])}var je=new Se,ze=function(){function e(t,n,i){(0,r.Z)(this,e),this.bodyNode=t,this._driver=n,this._normalizer=i,this._animations={},this._playersById={},this.players=[]}return(0,o.Z)(e,[{key:"register",value:function(e,t){var n=[],i=me(this._driver,t,n);if(n.length)throw new Error("Unable to build the animation due to the following errors: ".concat(n.join("\n")));this._animations[e]=i}},{key:"_buildPlayer",value:function(e,t,n){var i=e.element,r=y(this._driver,this._normalizer,i,e.keyframes,t,n);return this._driver.animate(i,r,e.duration,e.delay,e.easing,[],!0)}},{key:"create",value:function(e,t){var n,i=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=[],a=this._animations[e],s=new Map;if(a?(n=ke(this._driver,t,a,R,L,{},{},r,je,o)).forEach(function(e){var t=S(s,e.element,{});e.postStyleProps.forEach(function(e){return t[e]=null})}):(o.push("The requested animation doesn't exist or has already been destroyed"),n=[]),o.length)throw new Error("Unable to create the animation due to the following errors: ".concat(o.join("\n")));s.forEach(function(e,t){Object.keys(e).forEach(function(n){e[n]=i._driver.computeStyle(t,n,u.l3)})});var l=n.map(function(e){var t=s.get(e.element);return i._buildPlayer(e,{},t)}),c=v(l);return this._playersById[e]=c,c.onDestroy(function(){return i.destroy(e)}),this.players.push(c),c}},{key:"destroy",value:function(e){var t=this._getPlayer(e);t.destroy(),delete this._playersById[e];var n=this.players.indexOf(t);n>=0&&this.players.splice(n,1)}},{key:"_getPlayer",value:function(e){var t=this._playersById[e];if(!t)throw new Error("Unable to find the timeline player referenced by ".concat(e));return t}},{key:"listen",value:function(e,t,n,i){var r=w(t,"","","");return _(this._getPlayer(e),n,r,i),function(){}}},{key:"command",value:function(e,t,n,i){if("register"!=n)if("create"!=n){var r=this._getPlayer(e);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(e)}}else this.create(e,t,i[0]||{});else this.register(e,i[0])}}]),e}(),Ue="ng-animate-queued",He="ng-animate-disabled",Ye=".ng-animate-disabled",Je="ng-star-inserted",Ge=[],We={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},Ve={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0},Qe=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";(0,r.Z)(this,e),this.namespaceId=n;var i=t&&t.hasOwnProperty("value"),o=i?t.value:t;if(this.value=nt(o),i){var a=J(t);delete a.value,this.options=a}else this.options={};this.options.params||(this.options.params={})}return(0,o.Z)(e,[{key:"params",get:function(){return this.options.params}},{key:"absorbOptions",value:function(e){var t=e.params;if(t){var n=this.options.params;Object.keys(t).forEach(function(e){null==n[e]&&(n[e]=t[e])})}}}]),e}(),Xe="void",Ke=new Qe(Xe),$e=function(){function e(t,n,i){(0,r.Z)(this,e),this.id=t,this.hostElement=n,this._engine=i,this.players=[],this._triggers={},this._queue=[],this._elementListeners=new Map,this._hostClassName="ng-tns-"+t,st(n,this._hostClassName)}return(0,o.Z)(e,[{key:"listen",value:function(e,t,n,i){var r,o=this;if(!this._triggers.hasOwnProperty(t))throw new Error('Unable to listen on the animation trigger event "'.concat(n,'" because the animation trigger "').concat(t,"\" doesn't exist!"));if(null==n||0==n.length)throw new Error('Unable to listen on the animation trigger "'.concat(t,'" because the provided event is undefined!'));if("start"!=(r=n)&&"done"!=r)throw new Error('The provided animation trigger event "'.concat(n,'" for the animation trigger "').concat(t,'" is not supported!'));var a=S(this._elementListeners,e,[]),s={name:t,phase:n,callback:i};a.push(s);var l=S(this._engine.statesByElement,e,{});return l.hasOwnProperty(t)||(st(e,F),st(e,"ng-trigger-"+t),l[t]=Ke),function(){o._engine.afterFlush(function(){var e=a.indexOf(s);e>=0&&a.splice(e,1),o._triggers[t]||delete l[t]})}}},{key:"register",value:function(e,t){return!this._triggers[e]&&(this._triggers[e]=t,!0)}},{key:"_getTrigger",value:function(e){var t=this._triggers[e];if(!t)throw new Error('The provided animation trigger "'.concat(e,'" has not been registered!'));return t}},{key:"trigger",value:function(e,t,n){var i=this,r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],o=this._getTrigger(t),a=new tt(this.id,t,e),s=this._engine.statesByElement.get(e);s||(st(e,F),st(e,"ng-trigger-"+t),this._engine.statesByElement.set(e,s={}));var l=s[t],c=new Qe(n,this.id),u=n&&n.hasOwnProperty("value");!u&&l&&c.absorbOptions(l.options),s[t]=c,l||(l=Ke);var d=c.value===Xe;if(d||l.value!==c.value){var h=S(this._engine.playersByElement,e,[]);h.forEach(function(e){e.namespaceId==i.id&&e.triggerName==t&&e.queued&&e.destroy()});var p=o.matchTransition(l.value,c.value,e,c.params),f=!1;if(!p){if(!r)return;p=o.fallbackTransition,f=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:e,triggerName:t,transition:p,fromState:l,toState:c,player:a,isFallbackTransition:f}),f||(st(e,Ue),a.onStart(function(){lt(e,Ue)})),a.onDone(function(){var t=i.players.indexOf(a);t>=0&&i.players.splice(t,1);var n=i._engine.playersByElement.get(e);if(n){var r=n.indexOf(a);r>=0&&n.splice(r,1)}}),this.players.push(a),h.push(a),a}if(!dt(l.params,c.params)){var m=[],g=o.matchStyles(l.value,l.params,m),v=o.matchStyles(c.value,c.params,m);m.length?this._engine.reportError(m):this._engine.afterFlush(function(){X(e,g),Q(e,v)})}}},{key:"deregister",value:function(e){var t=this;delete this._triggers[e],this._engine.statesByElement.forEach(function(t,n){delete t[e]}),this._elementListeners.forEach(function(n,i){t._elementListeners.set(i,n.filter(function(t){return t.name!=e}))})}},{key:"clearElementCache",value:function(e){this._engine.statesByElement.delete(e),this._elementListeners.delete(e);var t=this._engine.playersByElement.get(e);t&&(t.forEach(function(e){return e.destroy()}),this._engine.playersByElement.delete(e))}},{key:"_signalRemovalForInnerTriggers",value:function(e,t){var n=this,i=this._engine.driver.query(e,B,!0);i.forEach(function(e){if(!e.__ng_removed){var i=n._engine.fetchNamespacesByElement(e);i.size?i.forEach(function(n){return n.triggerLeaveAnimation(e,t,!1,!0)}):n.clearElementCache(e)}}),this._engine.afterFlushAnimationsDone(function(){return i.forEach(function(e){return n.clearElementCache(e)})})}},{key:"triggerLeaveAnimation",value:function(e,t,n,i){var r=this,o=this._engine.statesByElement.get(e);if(o){var a=[];if(Object.keys(o).forEach(function(t){if(r._triggers[t]){var n=r.trigger(e,t,Xe,i);n&&a.push(n)}}),a.length)return this._engine.markElementAsRemoved(this.id,e,!0,t),n&&v(a).onDone(function(){return r._engine.processLeaveNode(e)}),!0}return!1}},{key:"prepareLeaveAnimationListeners",value:function(e){var t=this,n=this._elementListeners.get(e),i=this._engine.statesByElement.get(e);if(n&&i){var r=new Set;n.forEach(function(n){var o=n.name;if(!r.has(o)){r.add(o);var a=t._triggers[o].fallbackTransition,s=i[o]||Ke,l=new Qe(Xe),c=new tt(t.id,o,e);t._engine.totalQueuedPlayers++,t._queue.push({element:e,triggerName:o,transition:a,fromState:s,toState:l,player:c,isFallbackTransition:!0})}})}}},{key:"removeNode",value:function(e,t){var n=this,i=this._engine;if(e.childElementCount&&this._signalRemovalForInnerTriggers(e,t),!this.triggerLeaveAnimation(e,t,!0)){var r=!1;if(i.totalAnimations){var o=i.players.length?i.playersByQueriedElement.get(e):[];if(o&&o.length)r=!0;else for(var a=e;a=a.parentNode;)if(i.statesByElement.get(a)){r=!0;break}}if(this.prepareLeaveAnimationListeners(e),r)i.markElementAsRemoved(this.id,e,!1,t);else{var s=e.__ng_removed;s&&s!==We||(i.afterFlush(function(){return n.clearElementCache(e)}),i.destroyInnerAnimations(e),i._onRemovalComplete(e,t))}}}},{key:"insertNode",value:function(e,t){st(e,this._hostClassName)}},{key:"drainQueuedTransitions",value:function(e){var t=this,n=[];return this._queue.forEach(function(i){var r=i.player;if(!r.destroyed){var o=i.element,a=t._elementListeners.get(o);a&&a.forEach(function(t){if(t.name==i.triggerName){var n=w(o,i.triggerName,i.fromState.value,i.toState.value);n._data=e,_(i.player,t.phase,n,t.callback)}}),r.markedForDestroy?t._engine.afterFlush(function(){r.destroy()}):n.push(i)}}),this._queue=[],n.sort(function(e,n){var i=e.transition.ast.depCount,r=n.transition.ast.depCount;return 0==i||0==r?i-r:t._engine.driver.containsElement(e.element,n.element)?1:-1})}},{key:"destroy",value:function(e){this.players.forEach(function(e){return e.destroy()}),this._signalRemovalForInnerTriggers(this.hostElement,e)}},{key:"elementContainsData",value:function(e){var t=!1;return this._elementListeners.has(e)&&(t=!0),!!this._queue.find(function(t){return t.element===e})||t}}]),e}(),et=function(){function e(t,n,i){(0,r.Z)(this,e),this.bodyNode=t,this.driver=n,this._normalizer=i,this.players=[],this.newHostElements=new Map,this.playersByElement=new Map,this.playersByQueriedElement=new Map,this.statesByElement=new Map,this.disabledNodes=new Set,this.totalAnimations=0,this.totalQueuedPlayers=0,this._namespaceLookup={},this._namespaceList=[],this._flushFns=[],this._whenQuietFns=[],this.namespacesByHostElement=new Map,this.collectedEnterElements=[],this.collectedLeaveElements=[],this.onRemovalComplete=function(e,t){}}return(0,o.Z)(e,[{key:"_onRemovalComplete",value:function(e,t){this.onRemovalComplete(e,t)}},{key:"queuedPlayers",get:function(){var e=[];return this._namespaceList.forEach(function(t){t.players.forEach(function(t){t.queued&&e.push(t)})}),e}},{key:"createNamespace",value:function(e,t){var n=new $e(e,t,this);return this.bodyNode&&this.driver.containsElement(this.bodyNode,t)?this._balanceNamespaceList(n,t):(this.newHostElements.set(t,n),this.collectEnterElement(t)),this._namespaceLookup[e]=n}},{key:"_balanceNamespaceList",value:function(e,t){var n=this._namespaceList.length-1;if(n>=0){for(var i=!1,r=n;r>=0;r--)if(this.driver.containsElement(this._namespaceList[r].hostElement,t)){this._namespaceList.splice(r+1,0,e),i=!0;break}i||this._namespaceList.splice(0,0,e)}else this._namespaceList.push(e);return this.namespacesByHostElement.set(t,e),e}},{key:"register",value:function(e,t){var n=this._namespaceLookup[e];return n||(n=this.createNamespace(e,t)),n}},{key:"registerTrigger",value:function(e,t,n){var i=this._namespaceLookup[e];i&&i.register(t,n)&&this.totalAnimations++}},{key:"destroy",value:function(e,t){var n=this;if(e){var i=this._fetchNamespace(e);this.afterFlush(function(){n.namespacesByHostElement.delete(i.hostElement),delete n._namespaceLookup[e];var t=n._namespaceList.indexOf(i);t>=0&&n._namespaceList.splice(t,1)}),this.afterFlushAnimationsDone(function(){return i.destroy(t)})}}},{key:"_fetchNamespace",value:function(e){return this._namespaceLookup[e]}},{key:"fetchNamespacesByElement",value:function(e){var t=new Set,n=this.statesByElement.get(e);if(n)for(var i=Object.keys(n),r=0;r=0&&this.collectedLeaveElements.splice(o,1)}if(e){var a=this._fetchNamespace(e);a&&a.insertNode(t,n)}i&&this.collectEnterElement(t)}}},{key:"collectEnterElement",value:function(e){this.collectedEnterElements.push(e)}},{key:"markElementAsDisabled",value:function(e,t){t?this.disabledNodes.has(e)||(this.disabledNodes.add(e),st(e,He)):this.disabledNodes.has(e)&&(this.disabledNodes.delete(e),lt(e,He))}},{key:"removeNode",value:function(e,t,n,i){if(it(t)){var r=e?this._fetchNamespace(e):null;if(r?r.removeNode(t,i):this.markElementAsRemoved(e,t,!1,i),n){var o=this.namespacesByHostElement.get(t);o&&o.id!==e&&o.removeNode(t,i)}}else this._onRemovalComplete(t,i)}},{key:"markElementAsRemoved",value:function(e,t,n,i){this.collectedLeaveElements.push(t),t.__ng_removed={namespaceId:e,setForRemoval:i,hasAnimation:n,removedBeforeQueried:!1}}},{key:"listen",value:function(e,t,n,i,r){return it(t)?this._fetchNamespace(e).listen(t,n,i,r):function(){}}},{key:"_buildInstruction",value:function(e,t,n,i,r){return e.transition.build(this.driver,e.element,e.fromState.value,e.toState.value,n,i,e.fromState.options,e.toState.options,t,r)}},{key:"destroyInnerAnimations",value:function(e){var t=this,n=this.driver.query(e,B,!0);n.forEach(function(e){return t.destroyActiveAnimationsForElement(e)}),0!=this.playersByQueriedElement.size&&(n=this.driver.query(e,z,!0)).forEach(function(e){return t.finishActiveQueriedAnimationOnElement(e)})}},{key:"destroyActiveAnimationsForElement",value:function(e){var t=this.playersByElement.get(e);t&&t.forEach(function(e){e.queued?e.markedForDestroy=!0:e.destroy()})}},{key:"finishActiveQueriedAnimationOnElement",value:function(e){var t=this.playersByQueriedElement.get(e);t&&t.forEach(function(e){return e.finish()})}},{key:"whenRenderingDone",value:function(){var e=this;return new Promise(function(t){if(e.players.length)return v(e.players).onDone(function(){return t()});t()})}},{key:"processLeaveNode",value:function(e){var t=this,n=e.__ng_removed;if(n&&n.setForRemoval){if(e.__ng_removed=We,n.namespaceId){this.destroyInnerAnimations(e);var i=this._fetchNamespace(n.namespaceId);i&&i.clearElementCache(e)}this._onRemovalComplete(e,n.setForRemoval)}this.driver.matchesElement(e,Ye)&&this.markElementAsDisabled(e,!1),this.driver.query(e,Ye,!0).forEach(function(e){t.markElementAsDisabled(e,!1)})}},{key:"flush",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,n=[];if(this.newHostElements.size&&(this.newHostElements.forEach(function(t,n){return e._balanceNamespaceList(t,n)}),this.newHostElements.clear()),this.totalAnimations&&this.collectedEnterElements.length)for(var i=0;i=0;O--)this._namespaceList[O].drainQueuedTransitions(t).forEach(function(e){var t=e.player,o=e.element;if(Z.push(t),n.collectedEnterElements.length){var u=o.__ng_removed;if(u&&u.setForMove)return void t.destroy()}var d=!h||!n.driver.containsElement(h,o),p=T.get(o),f=g.get(o),m=n._buildInstruction(e,i,f,p,d);if(m.errors&&m.errors.length)M.push(m);else{if(d)return t.onStart(function(){return X(o,m.fromStyles)}),t.onDestroy(function(){return Q(o,m.toStyles)}),void r.push(t);if(e.isFallbackTransition)return t.onStart(function(){return X(o,m.fromStyles)}),t.onDestroy(function(){return Q(o,m.toStyles)}),void r.push(t);m.timelines.forEach(function(e){return e.stretchStartingKeyframe=!0}),i.append(o,m.timelines),a.push({instruction:m,player:t,element:o}),m.queriedElements.forEach(function(e){return S(s,e,[]).push(t)}),m.preStyleProps.forEach(function(e,t){var n=Object.keys(e);if(n.length){var i=l.get(t);i||l.set(t,i=new Set),n.forEach(function(e){return i.add(e)})}}),m.postStyleProps.forEach(function(e,t){var n=Object.keys(e),i=c.get(t);i||c.set(t,i=new Set),n.forEach(function(e){return i.add(e)})})}});if(M.length){var E=[];M.forEach(function(e){E.push("@".concat(e.triggerName," has failed due to:\n")),e.errors.forEach(function(e){return E.push("- ".concat(e,"\n"))})}),Z.forEach(function(e){return e.destroy()}),this.reportError(E)}var P=new Map,I=new Map;a.forEach(function(e){var t=e.element;i.has(t)&&(I.set(t,t),n._beforeAnimationBuild(e.player.namespaceId,e.instruction,P))}),r.forEach(function(e){var t=e.element;n._getPreviousPlayers(t,!1,e.namespaceId,e.triggerName,null).forEach(function(e){S(P,t,[]).push(e),e.destroy()})});var q=_.filter(function(e){return ht(e,l,c)}),N=new Map;ot(N,this.driver,w,c,u.l3).forEach(function(e){ht(e,l,c)&&q.push(e)});var D=new Map;m.forEach(function(e,t){ot(D,n.driver,new Set(e),l,u.k1)}),q.forEach(function(e){var t=N.get(e),n=D.get(e);N.set(e,Object.assign(Object.assign({},t),n))});var F=[],B=[],j={};a.forEach(function(e){var t=e.element,a=e.player,s=e.instruction;if(i.has(t)){if(d.has(t))return a.onDestroy(function(){return Q(t,s.toStyles)}),a.disabled=!0,a.overrideTotalTime(s.totalTime),void r.push(a);var l=j;if(I.size>1){for(var c=t,u=[];c=c.parentNode;){var h=I.get(c);if(h){l=h;break}u.push(c)}u.forEach(function(e){return I.set(e,l)})}var p=n._buildAnimation(a.namespaceId,s,P,o,D,N);if(a.setRealPlayer(p),l===j)F.push(a);else{var f=n.playersByElement.get(l);f&&f.length&&(a.parentPlayer=v(f)),r.push(a)}}else X(t,s.fromStyles),a.onDestroy(function(){return Q(t,s.toStyles)}),B.push(a),d.has(t)&&r.push(a)}),B.forEach(function(e){var t=o.get(e.element);if(t&&t.length){var n=v(t);e.setRealPlayer(n)}}),r.forEach(function(e){e.parentPlayer?e.syncPlayerEvents(e.parentPlayer):e.destroy()});for(var U=0;U<_.length;U++){var H=_[U],Y=H.__ng_removed;if(lt(H,L),!Y||!Y.hasAnimation){var J=[];if(s.size){var G=s.get(H);G&&G.length&&J.push.apply(J,(0,f.Z)(G));for(var W=this.driver.query(H,z,!0),V=0;V0?this.driver.animate(e.element,t,e.duration,e.delay,e.easing,n):new u.ZN(e.duration,e.delay)}}]),e}(),tt=function(){function e(t,n,i){(0,r.Z)(this,e),this.namespaceId=t,this.triggerName=n,this.element=i,this._player=new u.ZN,this._containsRealPlayer=!1,this._queuedCallbacks={},this.destroyed=!1,this.markedForDestroy=!1,this.disabled=!1,this.queued=!0,this.totalTime=0}return(0,o.Z)(e,[{key:"setRealPlayer",value:function(e){var t=this;this._containsRealPlayer||(this._player=e,Object.keys(this._queuedCallbacks).forEach(function(n){t._queuedCallbacks[n].forEach(function(t){return _(e,n,void 0,t)})}),this._queuedCallbacks={},this._containsRealPlayer=!0,this.overrideTotalTime(e.totalTime),this.queued=!1)}},{key:"getRealPlayer",value:function(){return this._player}},{key:"overrideTotalTime",value:function(e){this.totalTime=e}},{key:"syncPlayerEvents",value:function(e){var t=this,n=this._player;n.triggerCallback&&e.onStart(function(){return n.triggerCallback("start")}),e.onDone(function(){return t.finish()}),e.onDestroy(function(){return t.destroy()})}},{key:"_queueEvent",value:function(e,t){S(this._queuedCallbacks,e,[]).push(t)}},{key:"onDone",value:function(e){this.queued&&this._queueEvent("done",e),this._player.onDone(e)}},{key:"onStart",value:function(e){this.queued&&this._queueEvent("start",e),this._player.onStart(e)}},{key:"onDestroy",value:function(e){this.queued&&this._queueEvent("destroy",e),this._player.onDestroy(e)}},{key:"init",value:function(){this._player.init()}},{key:"hasStarted",value:function(){return!this.queued&&this._player.hasStarted()}},{key:"play",value:function(){!this.queued&&this._player.play()}},{key:"pause",value:function(){!this.queued&&this._player.pause()}},{key:"restart",value:function(){!this.queued&&this._player.restart()}},{key:"finish",value:function(){this._player.finish()}},{key:"destroy",value:function(){this.destroyed=!0,this._player.destroy()}},{key:"reset",value:function(){!this.queued&&this._player.reset()}},{key:"setPosition",value:function(e){this.queued||this._player.setPosition(e)}},{key:"getPosition",value:function(){return this.queued?0:this._player.getPosition()}},{key:"triggerCallback",value:function(e){var t=this._player;t.triggerCallback&&t.triggerCallback(e)}}]),e}();function nt(e){return null!=e?e:null}function it(e){return e&&1===e.nodeType}function rt(e,t){var n=e.style.display;return e.style.display=null!=t?t:"none",n}function ot(e,t,n,i,r){var o=[];n.forEach(function(e){return o.push(rt(e))});var a=[];i.forEach(function(n,i){var o={};n.forEach(function(e){var n=o[e]=t.computeStyle(i,e,r);n&&0!=n.length||(i.__ng_removed=Ve,a.push(i))}),e.set(i,o)});var s=0;return n.forEach(function(e){return rt(e,o[s++])}),a}function at(e,t){var n=new Map;if(e.forEach(function(e){return n.set(e,[])}),0==t.length)return n;var i=new Set(t),r=new Map;function o(e){if(!e)return 1;var t=r.get(e);if(t)return t;var a=e.parentNode;return t=n.has(a)?a:i.has(a)?1:o(a),r.set(e,t),t}return t.forEach(function(e){var t=o(e);1!==t&&n.get(t).push(e)}),n}function st(e,t){if(e.classList)e.classList.add(t);else{var n=e.$$classes;n||(n=e.$$classes={}),n[t]=!0}}function lt(e,t){if(e.classList)e.classList.remove(t);else{var n=e.$$classes;n&&delete n[t]}}function ct(e,t,n){v(n).onDone(function(){return e.processLeaveNode(t)})}function ut(e,t){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:-1;this._transitionEngine.flush(e)}},{key:"players",get:function(){return this._transitionEngine.players.concat(this._timelineEngine.players)}},{key:"whenRenderingDone",value:function(){return this._transitionEngine.whenRenderingDone()}}]),e}();function ft(e,t){var n=null,i=null;return Array.isArray(t)&&t.length?(n=gt(t[0]),t.length>1&&(i=gt(t[t.length-1]))):t&&(n=gt(t)),n||i?new mt(e,n,i):null}var mt=function(){var e=function(){function e(t,n,i){(0,r.Z)(this,e),this._element=t,this._startStyles=n,this._endStyles=i,this._state=0;var o=e.initialStylesByElement.get(t);o||e.initialStylesByElement.set(t,o={}),this._initialStyles=o}return(0,o.Z)(e,[{key:"start",value:function(){this._state<1&&(this._startStyles&&Q(this._element,this._startStyles,this._initialStyles),this._state=1)}},{key:"finish",value:function(){this.start(),this._state<2&&(Q(this._element,this._initialStyles),this._endStyles&&(Q(this._element,this._endStyles),this._endStyles=null),this._state=1)}},{key:"destroy",value:function(){this.finish(),this._state<3&&(e.initialStylesByElement.delete(this._element),this._startStyles&&(X(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(X(this._element,this._endStyles),this._endStyles=null),Q(this._element,this._initialStyles),this._state=3)}}]),e}();return e.initialStylesByElement=new WeakMap,e}();function gt(e){for(var t=null,n=Object.keys(e),i=0;i=this._delay&&n>=this._duration&&this.finish()}},{key:"finish",value:function(){this._finished||(this._finished=!0,this._onDoneFn(),Ct(this._element,this._eventFn,!0))}},{key:"destroy",value:function(){var e,t,n,i;this._destroyed||(this._destroyed=!0,this.finish(),t=this._name,(i=xt(n=Tt(e=this._element,"").split(","),t))>=0&&(n.splice(i,1),kt(e,"",n.join(","))))}}]),e}();function wt(e,t,n){kt(e,"PlayState",n,St(e,t))}function St(e,t){var n=Tt(e,"");return n.indexOf(",")>0?xt(n.split(","),t):xt([n],t)}function xt(e,t){for(var n=0;n=0)return n;return-1}function Ct(e,t,n){n?e.removeEventListener(_t,t):e.addEventListener(_t,t)}function kt(e,t,n,i){var r=yt+t;if(null!=i){var o=e.style[r];if(o.length){var a=o.split(",");a[i]=n,n=a.join(",")}}e.style[r]=n}function Tt(e,t){return e.style[yt+t]||""}var At=function(){function e(t,n,i,o,a,s,l,c){(0,r.Z)(this,e),this.element=t,this.keyframes=n,this.animationName=i,this._duration=o,this._delay=a,this._finalStyles=l,this._specialStyles=c,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this.currentSnapshot={},this._state=0,this.easing=s||"linear",this.totalTime=o+a,this._buildStyler()}return(0,o.Z)(e,[{key:"onStart",value:function(e){this._onStartFns.push(e)}},{key:"onDone",value:function(e){this._onDoneFns.push(e)}},{key:"onDestroy",value:function(e){this._onDestroyFns.push(e)}},{key:"destroy",value:function(){this.init(),this._state>=4||(this._state=4,this._styler.destroy(),this._flushStartFns(),this._flushDoneFns(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(function(e){return e()}),this._onDestroyFns=[])}},{key:"_flushDoneFns",value:function(){this._onDoneFns.forEach(function(e){return e()}),this._onDoneFns=[]}},{key:"_flushStartFns",value:function(){this._onStartFns.forEach(function(e){return e()}),this._onStartFns=[]}},{key:"finish",value:function(){this.init(),this._state>=3||(this._state=3,this._styler.finish(),this._flushStartFns(),this._specialStyles&&this._specialStyles.finish(),this._flushDoneFns())}},{key:"setPosition",value:function(e){this._styler.setPosition(e)}},{key:"getPosition",value:function(){return this._styler.getPosition()}},{key:"hasStarted",value:function(){return this._state>=2}},{key:"init",value:function(){this._state>=1||(this._state=1,this._styler.apply(),this._delay&&this._styler.pause())}},{key:"play",value:function(){this.init(),this.hasStarted()||(this._flushStartFns(),this._state=2,this._specialStyles&&this._specialStyles.start()),this._styler.resume()}},{key:"pause",value:function(){this.init(),this._styler.pause()}},{key:"restart",value:function(){this.reset(),this.play()}},{key:"reset",value:function(){this._state=0,this._styler.destroy(),this._buildStyler(),this._styler.apply()}},{key:"_buildStyler",value:function(){var e=this;this._styler=new bt(this.element,this.animationName,this._duration,this._delay,this.easing,"forwards",function(){return e.finish()})}},{key:"triggerCallback",value:function(e){var t="start"==e?this._onStartFns:this._onDoneFns;t.forEach(function(e){return e()}),t.length=0}},{key:"beforeDestroy",value:function(){var e=this;this.init();var t={};if(this.hasStarted()){var n=this._state>=3;Object.keys(this._finalStyles).forEach(function(i){"offset"!=i&&(t[i]=n?e._finalStyles[i]:le(e.element,i))})}this.currentSnapshot=t}}]),e}(),Zt=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i){var o;return(0,r.Z)(this,n),(o=t.call(this)).element=e,o._startingStyles={},o.__initialized=!1,o._styles=q(i),o}return(0,o.Z)(n,[{key:"init",value:function(){var e=this;!this.__initialized&&this._startingStyles&&(this.__initialized=!0,Object.keys(this._styles).forEach(function(t){e._startingStyles[t]=e.element.style[t]}),(0,d.Z)((0,h.Z)(n.prototype),"init",this).call(this))}},{key:"play",value:function(){var e=this;this._startingStyles&&(this.init(),Object.keys(this._styles).forEach(function(t){return e.element.style.setProperty(t,e._styles[t])}),(0,d.Z)((0,h.Z)(n.prototype),"play",this).call(this))}},{key:"destroy",value:function(){var e=this;this._startingStyles&&(Object.keys(this._startingStyles).forEach(function(t){var n=e._startingStyles[t];n?e.element.style.setProperty(t,n):e.element.style.removeProperty(t)}),this._startingStyles=null,(0,d.Z)((0,h.Z)(n.prototype),"destroy",this).call(this))}}]),n}(u.ZN),Mt="gen_css_kf_",Ot=function(){function e(){(0,r.Z)(this,e),this._count=0}return(0,o.Z)(e,[{key:"validateStyleProperty",value:function(e){return O(e)}},{key:"matchesElement",value:function(e,t){return E(e,t)}},{key:"containsElement",value:function(e,t){return P(e,t)}},{key:"query",value:function(e,t,n){return I(e,t,n)}},{key:"computeStyle",value:function(e,t,n){return window.getComputedStyle(e)[t]}},{key:"buildKeyframeElement",value:function(e,t,n){n=n.map(function(e){return q(e)});var i="@keyframes ".concat(t," {\n"),r="";n.forEach(function(e){r=" ";var t=parseFloat(e.offset);i+="".concat(r).concat(100*t,"% {\n"),r+=" ",Object.keys(e).forEach(function(t){var n=e[t];switch(t){case"offset":return;case"easing":return void(n&&(i+="".concat(r,"animation-timing-function: ").concat(n,";\n")));default:return void(i+="".concat(r).concat(t,": ").concat(n,";\n"))}}),i+="".concat(r,"}\n")}),i+="}\n";var o=document.createElement("style");return o.textContent=i,o}},{key:"animate",value:function(e,t,n,i,r){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:[],a=o.filter(function(e){return e instanceof At}),s={};oe(n,i)&&a.forEach(function(e){var t=e.currentSnapshot;Object.keys(t).forEach(function(e){return s[e]=t[e]})});var l=Pt(t=ae(e,t,s));if(0==n)return new Zt(e,l);var c="".concat(Mt).concat(this._count++),u=this.buildKeyframeElement(e,c,t),d=Et(e);d.appendChild(u);var h=ft(e,t),p=new At(e,t,c,n,i,r,l,h);return p.onDestroy(function(){return It(u)}),p}}]),e}();function Et(e){var t,n=null===(t=e.getRootNode)||void 0===t?void 0:t.call(e);return"undefined"!=typeof ShadowRoot&&n instanceof ShadowRoot?n:document.head}function Pt(e){var t={};return e&&(Array.isArray(e)?e:[e]).forEach(function(e){Object.keys(e).forEach(function(n){"offset"!=n&&"easing"!=n&&(t[n]=e[n])})}),t}function It(e){e.parentNode.removeChild(e)}var qt=function(){function e(t,n,i,o){(0,r.Z)(this,e),this.element=t,this.keyframes=n,this.options=i,this._specialStyles=o,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=i.duration,this._delay=i.delay||0,this.time=this._duration+this._delay}return(0,o.Z)(e,[{key:"_onFinish",value:function(){this._finished||(this._finished=!0,this._onDoneFns.forEach(function(e){return e()}),this._onDoneFns=[])}},{key:"init",value:function(){this._buildPlayer(),this._preparePlayerBeforeStart()}},{key:"_buildPlayer",value:function(){var e=this;if(!this._initialized){this._initialized=!0;var t=this.keyframes;this.domPlayer=this._triggerWebAnimation(this.element,t,this.options),this._finalKeyframe=t.length?t[t.length-1]:{},this.domPlayer.addEventListener("finish",function(){return e._onFinish()})}}},{key:"_preparePlayerBeforeStart",value:function(){this._delay?this._resetDomPlayerState():this.domPlayer.pause()}},{key:"_triggerWebAnimation",value:function(e,t,n){return e.animate(t,n)}},{key:"onStart",value:function(e){this._onStartFns.push(e)}},{key:"onDone",value:function(e){this._onDoneFns.push(e)}},{key:"onDestroy",value:function(e){this._onDestroyFns.push(e)}},{key:"play",value:function(){this._buildPlayer(),this.hasStarted()||(this._onStartFns.forEach(function(e){return e()}),this._onStartFns=[],this._started=!0,this._specialStyles&&this._specialStyles.start()),this.domPlayer.play()}},{key:"pause",value:function(){this.init(),this.domPlayer.pause()}},{key:"finish",value:function(){this.init(),this._specialStyles&&this._specialStyles.finish(),this._onFinish(),this.domPlayer.finish()}},{key:"reset",value:function(){this._resetDomPlayerState(),this._destroyed=!1,this._finished=!1,this._started=!1}},{key:"_resetDomPlayerState",value:function(){this.domPlayer&&this.domPlayer.cancel()}},{key:"restart",value:function(){this.reset(),this.play()}},{key:"hasStarted",value:function(){return this._started}},{key:"destroy",value:function(){this._destroyed||(this._destroyed=!0,this._resetDomPlayerState(),this._onFinish(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(function(e){return e()}),this._onDestroyFns=[])}},{key:"setPosition",value:function(e){void 0===this.domPlayer&&this.init(),this.domPlayer.currentTime=e*this.time}},{key:"getPosition",value:function(){return this.domPlayer.currentTime/this.time}},{key:"totalTime",get:function(){return this._delay+this._duration}},{key:"beforeDestroy",value:function(){var e=this,t={};this.hasStarted()&&Object.keys(this._finalKeyframe).forEach(function(n){"offset"!=n&&(t[n]=e._finished?e._finalKeyframe[n]:le(e.element,n))}),this.currentSnapshot=t}},{key:"triggerCallback",value:function(e){var t="start"==e?this._onStartFns:this._onDoneFns;t.forEach(function(e){return e()}),t.length=0}}]),e}(),Nt=function(){function e(){(0,r.Z)(this,e),this._isNativeImpl=/\{\s*\[native\s+code\]\s*\}/.test(Dt().toString()),this._cssKeyframesDriver=new Ot}return(0,o.Z)(e,[{key:"validateStyleProperty",value:function(e){return O(e)}},{key:"matchesElement",value:function(e,t){return E(e,t)}},{key:"containsElement",value:function(e,t){return P(e,t)}},{key:"query",value:function(e,t,n){return I(e,t,n)}},{key:"computeStyle",value:function(e,t,n){return window.getComputedStyle(e)[t]}},{key:"overrideWebAnimationsSupport",value:function(e){this._isNativeImpl=e}},{key:"animate",value:function(e,t,n,i,r){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:[],a=arguments.length>6?arguments[6]:void 0,s=!a&&!this._isNativeImpl;if(s)return this._cssKeyframesDriver.animate(e,t,n,i,r,o);var l=0==i?"both":"forwards",c={duration:n,delay:i,fill:l};r&&(c.easing=r);var u={},d=o.filter(function(e){return e instanceof qt});oe(n,i)&&d.forEach(function(e){var t=e.currentSnapshot;Object.keys(t).forEach(function(e){return u[e]=t[e]})});var h=ft(e,t=ae(e,t=t.map(function(e){return G(e,!1)}),u));return new qt(e,t,c,h)}}]),e}();function Dt(){return m()&&Element.prototype.animate||{}}var Rt=n(40098),Lt=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i){var o;return(0,r.Z)(this,n),(o=t.call(this))._nextAnimationId=0,o._renderer=e.createRenderer(i.body,{id:"0",encapsulation:l.ifc.None,styles:[],data:{animation:[]}}),o}return(0,o.Z)(n,[{key:"build",value:function(e){var t=this._nextAnimationId.toString();this._nextAnimationId++;var n=Array.isArray(e)?(0,u.vP)(e):e;return jt(this._renderer,null,t,"register",[n]),new Ft(t,this._renderer)}}]),n}(u._j);return e.\u0275fac=function(t){return new(t||e)(l.LFG(l.FYo),l.LFG(Rt.K0))},e.\u0275prov=l.Yz7({token:e,factory:e.\u0275fac}),e}(),Ft=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i){var o;return(0,r.Z)(this,n),(o=t.call(this))._id=e,o._renderer=i,o}return(0,o.Z)(n,[{key:"create",value:function(e,t){return new Bt(this._id,e,t||{},this._renderer)}}]),n}(u.LC),Bt=function(){function e(t,n,i,o){(0,r.Z)(this,e),this.id=t,this.element=n,this._renderer=o,this.parentPlayer=null,this._started=!1,this.totalTime=0,this._command("create",i)}return(0,o.Z)(e,[{key:"_listen",value:function(e,t){return this._renderer.listen(this.element,"@@".concat(this.id,":").concat(e),t)}},{key:"_command",value:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i=0&&e3&&void 0!==arguments[3])||arguments[3];this.delegate.insertBefore(e,t,n),this.engine.onInsert(this.namespaceId,t,e,i)}},{key:"removeChild",value:function(e,t,n){this.engine.onRemove(this.namespaceId,t,this.delegate,n)}},{key:"selectRootElement",value:function(e,t){return this.delegate.selectRootElement(e,t)}},{key:"parentNode",value:function(e){return this.delegate.parentNode(e)}},{key:"nextSibling",value:function(e){return this.delegate.nextSibling(e)}},{key:"setAttribute",value:function(e,t,n,i){this.delegate.setAttribute(e,t,n,i)}},{key:"removeAttribute",value:function(e,t,n){this.delegate.removeAttribute(e,t,n)}},{key:"addClass",value:function(e,t){this.delegate.addClass(e,t)}},{key:"removeClass",value:function(e,t){this.delegate.removeClass(e,t)}},{key:"setStyle",value:function(e,t,n,i){this.delegate.setStyle(e,t,n,i)}},{key:"removeStyle",value:function(e,t,n){this.delegate.removeStyle(e,t,n)}},{key:"setProperty",value:function(e,t,n){t.charAt(0)==zt&&t==Ut?this.disableAnimations(e,!!n):this.delegate.setProperty(e,t,n)}},{key:"setValue",value:function(e,t){this.delegate.setValue(e,t)}},{key:"listen",value:function(e,t,n){return this.delegate.listen(e,t,n)}},{key:"disableAnimations",value:function(e,t){this.engine.disableAnimations(e,t)}}]),e}(),Jt=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,o,a){var s;return(0,r.Z)(this,n),(s=t.call(this,i,o,a)).factory=e,s.namespaceId=i,s}return(0,o.Z)(n,[{key:"setProperty",value:function(e,t,n){t.charAt(0)==zt?"."==t.charAt(1)&&t==Ut?this.disableAnimations(e,n=void 0===n||!!n):this.engine.process(this.namespaceId,e,t.substr(1),n):this.delegate.setProperty(e,t,n)}},{key:"listen",value:function(e,t,n){var r,o,a=this;if(t.charAt(0)==zt){var s=function(e){switch(e){case"body":return document.body;case"document":return document;case"window":return window;default:return e}}(e),l=t.substr(1),c="";if(l.charAt(0)!=zt){var u=(o=(r=l).indexOf("."),[r.substring(0,o),r.substr(o+1)]),d=(0,i.Z)(u,2);l=d[0],c=d[1]}return this.engine.listen(this.namespaceId,s,l,c,function(e){a.factory.scheduleListenerCallback(e._data||-1,n,e)})}return this.delegate.listen(e,t,n)}}]),n}(Yt),Gt=function(){var e=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,o){return(0,r.Z)(this,n),t.call(this,e.body,i,o)}return(0,o.Z)(n,[{key:"ngOnDestroy",value:function(){this.flush()}}]),n}(pt);return e.\u0275fac=function(t){return new(t||e)(l.LFG(Rt.K0),l.LFG(D),l.LFG(Pe))},e.\u0275prov=l.Yz7({token:e,factory:e.\u0275fac}),e}(),Wt=new l.OlP("AnimationModuleType"),Vt=[{provide:u._j,useClass:Lt},{provide:Pe,useFactory:function(){return new Ie}},{provide:pt,useClass:Gt},{provide:l.FYo,useFactory:function(e,t,n){return new Ht(e,t,n)},deps:[c.se,pt,l.R0b]}],Qt=[{provide:D,useFactory:function(){return"function"==typeof Dt()?new Nt:new Ot}},{provide:Wt,useValue:"BrowserAnimations"}].concat(Vt),Xt=[{provide:D,useClass:N},{provide:Wt,useValue:"NoopAnimations"}].concat(Vt),Kt=function(){var e=function(){function e(){(0,r.Z)(this,e)}return(0,o.Z)(e,null,[{key:"withConfig",value:function(t){return{ngModule:e,providers:t.disableAnimations?Xt:Qt}}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=l.oAB({type:e}),e.\u0275inj=l.cJS({providers:Qt,imports:[c.b2]}),e}()},29176:function(e,t,n){"use strict";n.d(t,{b2:function(){return J},H7:function(){return j},Dx:function(){return W},HJ:function(){return $},q6:function(){return H},se:function(){return E}});var i,r=n(51751),o=n(12558),a=n(11254),s=n(61680),l=n(49843),c=n(37859),u=n(40098),d=n(37602),h=function(e){(0,l.Z)(n,e);var t=(0,c.Z)(n);function n(){return(0,s.Z)(this,n),t.apply(this,arguments)}return(0,a.Z)(n,[{key:"onAndCancel",value:function(e,t,n){return e.addEventListener(t,n,!1),function(){e.removeEventListener(t,n,!1)}}},{key:"dispatchEvent",value:function(e,t){e.dispatchEvent(t)}},{key:"remove",value:function(e){e.parentNode&&e.parentNode.removeChild(e)}},{key:"createElement",value:function(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}},{key:"createHtmlDocument",value:function(){return document.implementation.createHTMLDocument("fakeTitle")}},{key:"getDefaultDocument",value:function(){return document}},{key:"isElementNode",value:function(e){return e.nodeType===Node.ELEMENT_NODE}},{key:"isShadowRoot",value:function(e){return e instanceof DocumentFragment}},{key:"getGlobalEventTarget",value:function(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}},{key:"getBaseHref",value:function(e){var t=(p=p||document.querySelector("base"))?p.getAttribute("href"):null;return null==t?null:function(e){(i=i||document.createElement("a")).setAttribute("href",e);var t=i.pathname;return"/"===t.charAt(0)?t:"/".concat(t)}(t)}},{key:"resetBaseElement",value:function(){p=null}},{key:"getUserAgent",value:function(){return window.navigator.userAgent}},{key:"getCookie",value:function(e){return(0,u.Mx)(document.cookie,e)}}],[{key:"makeCurrent",value:function(){(0,u.HT)(new n)}}]),n}(function(e){(0,l.Z)(n,e);var t=(0,c.Z)(n);function n(){var e;return(0,s.Z)(this,n),(e=t.apply(this,arguments)).supportsDOMEvents=!0,e}return n}(u.w_)),p=null,f=new d.OlP("TRANSITION_ID"),m=[{provide:d.ip1,useFactory:function(e,t,n){return function(){n.get(d.CZH).donePromise.then(function(){var n=(0,u.q)();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter(function(t){return t.getAttribute("ng-transition")===e}).forEach(function(e){return n.remove(e)})})}},deps:[f,u.K0,d.zs3],multi:!0}],g=function(){function e(){(0,s.Z)(this,e)}return(0,a.Z)(e,[{key:"addToWindow",value:function(e){d.dqk.getAngularTestability=function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=e.findTestabilityInTree(t,n);if(null==i)throw new Error("Could not find testability for element.");return i},d.dqk.getAllAngularTestabilities=function(){return e.getAllTestabilities()},d.dqk.getAllAngularRootElements=function(){return e.getAllRootElements()},d.dqk.frameworkStabilizers||(d.dqk.frameworkStabilizers=[]),d.dqk.frameworkStabilizers.push(function(e){var t=d.dqk.getAllAngularTestabilities(),n=t.length,i=!1,r=function(t){i=i||t,0==--n&&e(i)};t.forEach(function(e){e.whenStable(r)})})}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var i=e.getTestability(t);return null!=i?i:n?(0,u.q)().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){(0,d.VLi)(new e)}}]),e}(),v=function(){var e=function(){function e(){(0,s.Z)(this,e)}return(0,a.Z)(e,[{key:"build",value:function(){return new XMLHttpRequest}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=d.Yz7({token:e,factory:e.\u0275fac}),e}(),y=new d.OlP("EventManagerPlugins"),_=function(){var e=function(){function e(t,n){var i=this;(0,s.Z)(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach(function(e){return e.manager=i}),this._plugins=t.slice().reverse()}return(0,a.Z)(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,i=0;i-1&&(t.splice(n,1),o+=e+".")}),o+=r,0!=t.length||0===r.length)return null;var a={};return a.domEventName=i,a.fullKey=o,a}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&L.hasOwnProperty(t)&&(t=L[t]))}return R[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),D.forEach(function(i){i!=n&&(0,F[i])(e)&&(t+=i+".")}),t+=n}},{key:"eventCallback",value:function(e,t,i){return function(r){n.getEventFullKey(r)===e&&i.runGuarded(function(){return t(r)})}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),n}(b);return e.\u0275fac=function(t){return new(t||e)(d.LFG(u.K0))},e.\u0275prov=d.Yz7({token:e,factory:e.\u0275fac}),e}(),j=function(){var e=function e(){(0,s.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=(0,d.Yz7)({factory:function(){return(0,d.LFG)(U)},token:e,providedIn:"root"}),e}();function z(e){return new U(e.get(u.K0))}var U=function(){var e=function(e){(0,l.Z)(n,e);var t=(0,c.Z)(n);function n(e){var i;return(0,s.Z)(this,n),(i=t.call(this))._doc=e,i}return(0,a.Z)(n,[{key:"sanitize",value:function(e,t){if(null==t)return null;switch(e){case d.q3G.NONE:return t;case d.q3G.HTML:return(0,d.qzn)(t,"HTML")?(0,d.z3N)(t):(0,d.EiD)(this._doc,String(t)).toString();case d.q3G.STYLE:return(0,d.qzn)(t,"Style")?(0,d.z3N)(t):t;case d.q3G.SCRIPT:if((0,d.qzn)(t,"Script"))return(0,d.z3N)(t);throw new Error("unsafe value used in a script context");case d.q3G.URL:return(0,d.yhl)(t),(0,d.qzn)(t,"URL")?(0,d.z3N)(t):(0,d.mCW)(String(t));case d.q3G.RESOURCE_URL:if((0,d.qzn)(t,"ResourceURL"))return(0,d.z3N)(t);throw new Error("unsafe value used in a resource URL context (see https://g.co/ng/security#xss)");default:throw new Error("Unexpected SecurityContext ".concat(e," (see https://g.co/ng/security#xss)"))}}},{key:"bypassSecurityTrustHtml",value:function(e){return(0,d.JVY)(e)}},{key:"bypassSecurityTrustStyle",value:function(e){return(0,d.L6k)(e)}},{key:"bypassSecurityTrustScript",value:function(e){return(0,d.eBb)(e)}},{key:"bypassSecurityTrustUrl",value:function(e){return(0,d.LAX)(e)}},{key:"bypassSecurityTrustResourceUrl",value:function(e){return(0,d.pB0)(e)}}]),n}(j);return e.\u0275fac=function(t){return new(t||e)(d.LFG(u.K0))},e.\u0275prov=(0,d.Yz7)({factory:function(){return z((0,d.LFG)(d.gxx))},token:e,providedIn:"root"}),e}(),H=(0,d.eFA)(d._c5,"browser",[{provide:d.Lbi,useValue:u.bD},{provide:d.g9A,useValue:function(){h.makeCurrent(),g.init()},multi:!0},{provide:u.K0,useFactory:function(){return(0,d.RDi)(document),document},deps:[]}]),Y=[[],{provide:d.zSh,useValue:"root"},{provide:d.qLn,useFactory:function(){return new d.qLn},deps:[]},{provide:y,useClass:N,multi:!0,deps:[u.K0,d.R0b,d.Lbi]},{provide:y,useClass:B,multi:!0,deps:[u.K0]},[],{provide:E,useClass:E,deps:[_,S,d.AFp]},{provide:d.FYo,useExisting:E},{provide:w,useExisting:S},{provide:S,useClass:S,deps:[u.K0]},{provide:d.dDg,useClass:d.dDg,deps:[d.R0b]},{provide:_,useClass:_,deps:[y,d.R0b]},{provide:u.JF,useClass:v,deps:[]},[]],J=function(){var e=function(){function e(t){if((0,s.Z)(this,e),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.")}return(0,a.Z)(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:d.AFp,useValue:t.appId},{provide:f,useExisting:d.AFp},m]}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(d.LFG(e,12))},e.\u0275mod=d.oAB({type:e}),e.\u0275inj=d.cJS({providers:Y,imports:[u.ez,d.hGG]}),e}();function G(){return new W((0,d.LFG)(u.K0))}var W=function(){var e=function(){function e(t){(0,s.Z)(this,e),this._doc=t}return(0,a.Z)(e,[{key:"getTitle",value:function(){return this._doc.title}},{key:"setTitle",value:function(e){this._doc.title=e||""}}]),e}();return e.\u0275fac=function(t){return new(t||e)(d.LFG(u.K0))},e.\u0275prov=(0,d.Yz7)({factory:G,token:e,providedIn:"root"}),e}(),V="undefined"!=typeof window&&window||{},Q=function e(t,n){(0,s.Z)(this,e),this.msPerTick=t,this.numTicks=n},X=function(){function e(t){(0,s.Z)(this,e),this.appRef=t.injector.get(d.z2F)}return(0,a.Z)(e,[{key:"timeChangeDetection",value:function(e){var t=e&&e.record,n="Change Detection",i=null!=V.console.profile;t&&i&&V.console.profile(n);for(var r=K(),o=0;o<5||K()-r<500;)this.appRef.tick(),o++;var a=K();t&&i&&V.console.profileEnd(n);var s=(a-r)/o;return V.console.log("ran ".concat(o," change detection cycles")),V.console.log("".concat(s.toFixed(2)," ms per check")),new Q(s,o)}}]),e}();function K(){return V.performance&&V.performance.now?V.performance.now():(new Date).getTime()}function $(e){return"profiler",t=new X(e),"undefined"!=typeof COMPILED&&COMPILED||((d.dqk.ng=d.dqk.ng||{}).profiler=t),e;var t}},82605:function(e,t,n){"use strict";n.d(t,{Rf:function(){return o},DM:function(){return a},en:function(){return s},jH:function(){return l},Cf:function(){return c},Db:function(){return u},EG:function(){return d},l4:function(){return h},JY:function(){return p}});var i=n(4839),r={};function o(){return(0,i.KV)()?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:r}function a(){var e=o(),t=e.crypto||e.msCrypto;if(void 0!==t&&t.getRandomValues){var n=new Uint16Array(8);t.getRandomValues(n),n[3]=4095&n[3]|16384,n[4]=16383&n[4]|32768;var i=function(e){for(var t=e.toString(16);t.length<4;)t="0"+t;return t};return i(n[0])+i(n[1])+i(n[2])+i(n[3])+i(n[4])+i(n[5])+i(n[6])+i(n[7])}return"xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx".replace(/[xy]/g,function(e){var t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)})}function s(e){if(!e)return{};var t=e.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);return t?{host:t[4],path:t[5],protocol:t[2],relative:t[5]+(t[6]||"")+(t[8]||"")}:{}}function l(e){if(e.message)return e.message;if(e.exception&&e.exception.values&&e.exception.values[0]){var t=e.exception.values[0];return t.type&&t.value?t.type+": "+t.value:t.type||t.value||e.event_id||""}return e.event_id||""}function c(e){var t=o();if(!("console"in t))return e();var n=t.console,i={};["debug","info","warn","error","log","assert"].forEach(function(e){e in t.console&&n[e].__sentry_original__&&(i[e]=n[e],n[e]=n[e].__sentry_original__)});var r=e();return Object.keys(i).forEach(function(e){n[e]=i[e]}),r}function u(e,t,n){e.exception=e.exception||{},e.exception.values=e.exception.values||[],e.exception.values[0]=e.exception.values[0]||{},e.exception.values[0].value=e.exception.values[0].value||t||"",e.exception.values[0].type=e.exception.values[0].type||n||"Error"}function d(e,t){void 0===t&&(t={});try{e.exception.values[0].mechanism=e.exception.values[0].mechanism||{},Object.keys(t).forEach(function(n){e.exception.values[0].mechanism[n]=t[n]})}catch(n){}}function h(){try{return document.location.href}catch(e){return""}}function p(e,t){if(!t)return 6e4;var n=parseInt(""+t,10);if(!isNaN(n))return 1e3*n;var i=Date.parse(""+t);return isNaN(i)?6e4:i-e}},4839:function(e,t,n){"use strict";function i(){return"[object process]"===Object.prototype.toString.call("undefined"!=typeof process?process:0)}function r(e,t){return e.require(t)}n.d(t,{KV:function(){return i},l$:function(){return r}}),e=n.hmd(e)},46354:function(e,t,n){"use strict";n.d(t,{yW:function(){return l},ph:function(){return c}});var i=n(82605),r=n(4839);e=n.hmd(e);var o={nowSeconds:function(){return Date.now()/1e3}},a=(0,r.KV)()?function(){try{return(0,r.l$)(e,"perf_hooks").performance}catch(t){return}}():function(){var e=(0,i.Rf)().performance;if(e&&e.now)return{now:function(){return e.now()},timeOrigin:Date.now()-e.now()}}(),s=void 0===a?o:{nowSeconds:function(){return(a.timeOrigin+a.now())/1e3}},l=o.nowSeconds.bind(o),c=s.nowSeconds.bind(s);!function(){var e=(0,i.Rf)().performance;if(e&&e.now){var t=36e5,n=e.now(),r=Date.now(),o=(e.timeOrigin&&Math.abs(e.timeOrigin+n-r),e.timing&&e.timing.navigationStart);"number"==typeof o&&Math.abs(o+n-r)}}()},39095:function(e,t,n){"use strict";n.d(t,{E$:function(){return I},ym:function(){return N}});var i=n(10270),r=n(61680),o=n(11254),a=n(40098),s=n(37602),l=n(68707),c=n(55371),u=n(93487),d=n(89797),h=(n(33090),n(59371)),p=n(16338),f=n(57682),m=n(85639),g=n(34487),v=n(54562),y=n(44213),_=n(35135),b=n(48359),w=n(4363),S=n(58780),x="undefined"!=typeof window&&("ontouchstart"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0);function C(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:3,i=Math.abs(e-t);return i=n.top&&t<=n.bottom}function A(e){var t=e.clientX,n=e.rect;return t>=n.left&&t<=n.right}function Z(e){var t=e.clientX,n=e.clientY,i=e.allowedEdges,r=e.cursorPrecision,o=e.elm.nativeElement.getBoundingClientRect(),a={};return i.left&&C(t,o.left,r)&&T({clientY:n,rect:o})&&(a.left=!0),i.right&&C(t,o.right,r)&&T({clientY:n,rect:o})&&(a.right=!0),i.top&&C(n,o.top,r)&&A({clientX:t,rect:o})&&(a.top=!0),i.bottom&&C(n,o.bottom,r)&&A({clientX:t,rect:o})&&(a.bottom=!0),a}var M=Object.freeze({topLeft:"nw-resize",topRight:"ne-resize",bottomLeft:"sw-resize",bottomRight:"se-resize",leftOrRight:"col-resize",topOrBottom:"row-resize"});function O(e,t){return e.left&&e.top?t.topLeft:e.right&&e.top?t.topRight:e.left&&e.bottom?t.bottomLeft:e.right&&e.bottom?t.bottomRight:e.left||e.right?t.leftOrRight:e.top||e.bottom?t.topOrBottom:""}function E(e){var t=e.initialRectangle,n=e.newRectangle,i={};return Object.keys(e.edges).forEach(function(e){i[e]=(n[e]||0)-(t[e]||0)}),i}var P="resize-active",I=function(){var e=function(){function e(t,n,i,o){(0,r.Z)(this,e),this.platformId=t,this.renderer=n,this.elm=i,this.zone=o,this.resizeEdges={},this.enableGhostResize=!1,this.resizeSnapGrid={},this.resizeCursors=M,this.resizeCursorPrecision=3,this.ghostElementPositioning="fixed",this.allowNegativeResizes=!1,this.mouseMoveThrottleMS=50,this.resizeStart=new s.vpe,this.resizing=new s.vpe,this.resizeEnd=new s.vpe,this.mouseup=new l.xQ,this.mousedown=new l.xQ,this.mousemove=new l.xQ,this.destroy$=new l.xQ,this.resizeEdges$=new l.xQ,this.pointerEventListeners=q.getInstance(n,o)}return(0,o.Z)(e,[{key:"ngOnInit",value:function(){var e,t=this,n=(0,c.T)(this.pointerEventListeners.pointerDown,this.mousedown),r=(0,c.T)(this.pointerEventListeners.pointerMove,this.mousemove).pipe((0,h.b)(function(t){var n=t.event;if(e)try{n.preventDefault()}catch(i){}}),(0,p.B)()),o=(0,c.T)(this.pointerEventListeners.pointerUp,this.mouseup),a=function(){e&&e.clonedNode&&(t.elm.nativeElement.parentElement.removeChild(e.clonedNode),t.renderer.setStyle(t.elm.nativeElement,"visibility","inherit"))},s=function(){return Object.assign({},M,t.resizeCursors)};this.resizeEdges$.pipe((0,f.O)(this.resizeEdges),(0,m.U)(function(){return t.resizeEdges&&Object.keys(t.resizeEdges).some(function(e){return!!t.resizeEdges[e]})}),(0,g.w)(function(e){return e?r:u.E}),(0,v.e)(this.mouseMoveThrottleMS),(0,y.R)(this.destroy$)).subscribe(function(n){var i=Z({clientX:n.clientX,clientY:n.clientY,elm:t.elm,allowedEdges:t.resizeEdges,cursorPrecision:t.resizeCursorPrecision}),r=s();if(!e){var o=O(i,r);t.renderer.setStyle(t.elm.nativeElement,"cursor",o)}t.setElementClass(t.elm,"resize-left-hover",!0===i.left),t.setElementClass(t.elm,"resize-right-hover",!0===i.right),t.setElementClass(t.elm,"resize-top-hover",!0===i.top),t.setElementClass(t.elm,"resize-bottom-hover",!0===i.bottom)}),n.pipe((0,_.zg)(function(a){function s(e){return{clientX:e.clientX-a.clientX,clientY:e.clientY-a.clientY}}var l=function(){var n={x:1,y:1};return e&&(t.resizeSnapGrid.left&&e.edges.left?n.x=+t.resizeSnapGrid.left:t.resizeSnapGrid.right&&e.edges.right&&(n.x=+t.resizeSnapGrid.right),t.resizeSnapGrid.top&&e.edges.top?n.y=+t.resizeSnapGrid.top:t.resizeSnapGrid.bottom&&e.edges.bottom&&(n.y=+t.resizeSnapGrid.bottom)),n};function u(e,t){return{x:Math.ceil(e.clientX/t.x),y:Math.ceil(e.clientY/t.y)}}return(0,c.T)(r.pipe((0,b.q)(1)).pipe((0,m.U)(function(e){return[,e]})),r.pipe((0,w.G)())).pipe((0,m.U)(function(e){var t=(0,i.Z)(e,2),n=t[0],r=t[1];return[n?s(n):n,s(r)]})).pipe((0,S.h)(function(e){var t=(0,i.Z)(e,2),n=t[0],r=t[1];if(!n)return!0;var o=l(),a=u(n,o),s=u(r,o);return a.x!==s.x||a.y!==s.y})).pipe((0,m.U)(function(e){var t=(0,i.Z)(e,2)[1],n=l();return{clientX:Math.round(t.clientX/n.x)*n.x,clientY:Math.round(t.clientY/n.y)*n.y}})).pipe((0,y.R)((0,c.T)(o,n)))})).pipe((0,S.h)(function(){return!!e})).pipe((0,m.U)(function(t){return k(e.startingRect,e.edges,t.clientX,t.clientY)})).pipe((0,S.h)(function(e){return t.allowNegativeResizes||!!(e.height&&e.width&&e.height>0&&e.width>0)})).pipe((0,S.h)(function(n){return!t.validateResize||t.validateResize({rectangle:n,edges:E({edges:e.edges,initialRectangle:e.startingRect,newRectangle:n})})}),(0,y.R)(this.destroy$)).subscribe(function(n){e&&e.clonedNode&&(t.renderer.setStyle(e.clonedNode,"height","".concat(n.height,"px")),t.renderer.setStyle(e.clonedNode,"width","".concat(n.width,"px")),t.renderer.setStyle(e.clonedNode,"top","".concat(n.top,"px")),t.renderer.setStyle(e.clonedNode,"left","".concat(n.left,"px"))),t.resizing.observers.length>0&&t.zone.run(function(){t.resizing.emit({edges:E({edges:e.edges,initialRectangle:e.startingRect,newRectangle:n}),rectangle:n})}),e.currentRect=n}),n.pipe((0,m.U)(function(e){return e.edges||Z({clientX:e.clientX,clientY:e.clientY,elm:t.elm,allowedEdges:t.resizeEdges,cursorPrecision:t.resizeCursorPrecision})})).pipe((0,S.h)(function(e){return Object.keys(e).length>0}),(0,y.R)(this.destroy$)).subscribe(function(n){e&&a();var i=function(e,t){var n=0,i=0,r=e.nativeElement.style,o=["transform","-ms-transform","-moz-transform","-o-transform"].map(function(e){return r[e]}).find(function(e){return!!e});if(o&&o.includes("translate")&&(n=o.replace(/.*translate3?d?\((-?[0-9]*)px, (-?[0-9]*)px.*/,"$1"),i=o.replace(/.*translate3?d?\((-?[0-9]*)px, (-?[0-9]*)px.*/,"$2")),"absolute"===t)return{height:e.nativeElement.offsetHeight,width:e.nativeElement.offsetWidth,top:e.nativeElement.offsetTop-i,bottom:e.nativeElement.offsetHeight+e.nativeElement.offsetTop-i,left:e.nativeElement.offsetLeft-n,right:e.nativeElement.offsetWidth+e.nativeElement.offsetLeft-n};var a=e.nativeElement.getBoundingClientRect();return{height:a.height,width:a.width,top:a.top-i,bottom:a.bottom-i,left:a.left-n,right:a.right-n,scrollTop:e.nativeElement.scrollTop,scrollLeft:e.nativeElement.scrollLeft}}(t.elm,t.ghostElementPositioning);e={edges:n,startingRect:i,currentRect:i};var r=s(),o=O(e.edges,r);t.renderer.setStyle(document.body,"cursor",o),t.setElementClass(t.elm,P,!0),t.enableGhostResize&&(e.clonedNode=t.elm.nativeElement.cloneNode(!0),t.elm.nativeElement.parentElement.appendChild(e.clonedNode),t.renderer.setStyle(t.elm.nativeElement,"visibility","hidden"),t.renderer.setStyle(e.clonedNode,"position",t.ghostElementPositioning),t.renderer.setStyle(e.clonedNode,"left","".concat(e.startingRect.left,"px")),t.renderer.setStyle(e.clonedNode,"top","".concat(e.startingRect.top,"px")),t.renderer.setStyle(e.clonedNode,"height","".concat(e.startingRect.height,"px")),t.renderer.setStyle(e.clonedNode,"width","".concat(e.startingRect.width,"px")),t.renderer.setStyle(e.clonedNode,"cursor",O(e.edges,r)),t.renderer.addClass(e.clonedNode,"resize-ghost-element"),e.clonedNode.scrollTop=e.startingRect.scrollTop,e.clonedNode.scrollLeft=e.startingRect.scrollLeft),t.resizeStart.observers.length>0&&t.zone.run(function(){t.resizeStart.emit({edges:E({edges:n,initialRectangle:i,newRectangle:i}),rectangle:k(i,{},0,0)})})}),o.pipe((0,y.R)(this.destroy$)).subscribe(function(){e&&(t.renderer.removeClass(t.elm.nativeElement,P),t.renderer.setStyle(document.body,"cursor",""),t.renderer.setStyle(t.elm.nativeElement,"cursor",""),t.resizeEnd.observers.length>0&&t.zone.run(function(){t.resizeEnd.emit({edges:E({edges:e.edges,initialRectangle:e.startingRect,newRectangle:e.currentRect}),rectangle:e.currentRect})}),a(),e=null)})}},{key:"ngOnChanges",value:function(e){e.resizeEdges&&this.resizeEdges$.next(this.resizeEdges)}},{key:"ngOnDestroy",value:function(){(0,a.NF)(this.platformId)&&this.renderer.setStyle(document.body,"cursor",""),this.mousedown.complete(),this.mouseup.complete(),this.mousemove.complete(),this.resizeEdges$.complete(),this.destroy$.next()}},{key:"setElementClass",value:function(e,t,n){n?this.renderer.addClass(e.nativeElement,t):this.renderer.removeClass(e.nativeElement,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(s.Y36(s.Lbi),s.Y36(s.Qsj),s.Y36(s.SBq),s.Y36(s.R0b))},e.\u0275dir=s.lG2({type:e,selectors:[["","mwlResizable",""]],inputs:{resizeEdges:"resizeEdges",enableGhostResize:"enableGhostResize",resizeSnapGrid:"resizeSnapGrid",resizeCursors:"resizeCursors",resizeCursorPrecision:"resizeCursorPrecision",ghostElementPositioning:"ghostElementPositioning",allowNegativeResizes:"allowNegativeResizes",mouseMoveThrottleMS:"mouseMoveThrottleMS",validateResize:"validateResize"},outputs:{resizeStart:"resizeStart",resizing:"resizing",resizeEnd:"resizeEnd"},exportAs:["mwlResizable"],features:[s.TTD]}),e}(),q=function(){function e(t,n){(0,r.Z)(this,e),this.pointerDown=new d.y(function(e){var i,r;return n.runOutsideAngular(function(){i=t.listen("document","mousedown",function(t){e.next({clientX:t.clientX,clientY:t.clientY,event:t})}),x&&(r=t.listen("document","touchstart",function(t){e.next({clientX:t.touches[0].clientX,clientY:t.touches[0].clientY,event:t})}))}),function(){i(),x&&r()}}).pipe((0,p.B)()),this.pointerMove=new d.y(function(e){var i,r;return n.runOutsideAngular(function(){i=t.listen("document","mousemove",function(t){e.next({clientX:t.clientX,clientY:t.clientY,event:t})}),x&&(r=t.listen("document","touchmove",function(t){e.next({clientX:t.targetTouches[0].clientX,clientY:t.targetTouches[0].clientY,event:t})}))}),function(){i(),x&&r()}}).pipe((0,p.B)()),this.pointerUp=new d.y(function(e){var i,r,o;return n.runOutsideAngular(function(){i=t.listen("document","mouseup",function(t){e.next({clientX:t.clientX,clientY:t.clientY,event:t})}),x&&(r=t.listen("document","touchend",function(t){e.next({clientX:t.changedTouches[0].clientX,clientY:t.changedTouches[0].clientY,event:t})}),o=t.listen("document","touchcancel",function(t){e.next({clientX:t.changedTouches[0].clientX,clientY:t.changedTouches[0].clientY,event:t})}))}),function(){i(),x&&(r(),o())}}).pipe((0,p.B)())}return(0,o.Z)(e,null,[{key:"getInstance",value:function(t,n){return e.instance||(e.instance=new e(t,n)),e.instance}}]),e}(),N=function(){var e=function e(){(0,r.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=s.oAB({type:e}),e.\u0275inj=s.cJS({}),e}()},57695:function(e,t,n){var i=n(53523),r=n(95863),o=n(49023),a=n(15909),s=/^\s*\|\s*/;function l(e,t){var n={};for(var i in e)n[i]=e[i].syntax||e[i];for(var r in t)r in e?t[r].syntax?n[r]=s.test(t[r].syntax)?n[r]+" "+t[r].syntax.trim():t[r].syntax:delete n[r]:t[r].syntax&&(n[r]=t[r].syntax.replace(s,""));return n}function c(e){var t={};for(var n in e)t[n]=e[n].syntax;return t}e.exports={types:l(o,a.syntaxes),atrules:function(e,t){var n={};for(var i in e){var r=t[i]&&t[i].descriptors||null;n[i]={prelude:i in t&&"prelude"in t[i]?t[i].prelude:e[i].prelude||null,descriptors:e[i].descriptors?l(e[i].descriptors,r||{}):r&&c(r)}}for(var o in t)hasOwnProperty.call(e,o)||(n[o]={prelude:t[o].prelude||null,descriptors:t[o].descriptors&&c(t[o].descriptors)});return n}(function(e){var t=Object.create(null);for(var n in e){var i=e[n],r=null;if(i.descriptors)for(var o in r=Object.create(null),i.descriptors)r[o]=i.descriptors[o].syntax;t[n.substr(1)]={prelude:i.syntax.trim().match(/^@\S+\s+([^;\{]*)/)[1].trim()||null,descriptors:r}}return t}(i),a.atrules),properties:l(r,a.properties)}},63335:function(e){function t(e){return{prev:null,next:null,data:e}}function n(e,t,n){var i;return null!==r?(i=r,r=r.cursor,i.prev=t,i.next=n,i.cursor=e.cursor):i={prev:t,next:n,cursor:e.cursor},e.cursor=i,i}function i(e){var t=e.cursor;e.cursor=t.cursor,t.prev=null,t.next=null,t.cursor=r,r=t}var r=null,o=function(){this.cursor=null,this.head=null,this.tail=null};o.createItem=t,o.prototype.createItem=t,o.prototype.updateCursors=function(e,t,n,i){for(var r=this.cursor;null!==r;)r.prev===e&&(r.prev=t),r.next===n&&(r.next=i),r=r.cursor},o.prototype.getSize=function(){for(var e=0,t=this.head;t;)e++,t=t.next;return e},o.prototype.fromArray=function(e){var n=null;this.head=null;for(var i=0;i0?r(t.charCodeAt(0)):0;c100&&(u=a-60+3,a=58);for(var d=s;d<=l;d++)d>=0&&d0&&i[d].length>u?"\u2026":"")+i[d].substr(u,98)+(i[d].length>u+100-1?"\u2026":""));return[n(s,o),new Array(a+c+2).join("-")+"^",n(o,l)].filter(Boolean).join("\n")}e.exports=function(e,t,n,r,a){var s=i("SyntaxError",e);return s.source=t,s.offset=n,s.line=r,s.column=a,s.sourceFragment=function(e){return o(s,isNaN(e)?0:e)},Object.defineProperty(s,"formattedMessage",{get:function(){return"Parse error: "+s.message+"\n"+o(s,2)}}),s.parseError={offset:n,line:r,column:a},s}},13146:function(e,t,n){var i=n(97077),r=i.TYPE,o=i.NAME,a=n(74586).cmpStr,s=r.EOF,l=r.WhiteSpace,c=r.Comment,u=16777215,d=24,h=function(){this.offsetAndType=null,this.balance=null,this.reset()};h.prototype={reset:function(){this.eof=!1,this.tokenIndex=-1,this.tokenType=0,this.tokenStart=this.firstCharOffset,this.tokenEnd=this.firstCharOffset},lookupType:function(e){return(e+=this.tokenIndex)>d:s},lookupOffset:function(e){return(e+=this.tokenIndex)0?e>d,this.source,r)){case 1:break e;case 2:i++;break e;default:this.balance[n]===i&&(i=n),r=this.offsetAndType[i]&u}return i-this.tokenIndex},isBalanceEdge:function(e){return this.balance[this.tokenIndex]>d===l;e++,t++);t>0&&this.skip(t)},skipSC:function(){for(;this.tokenType===l||this.tokenType===c;)this.next()},skip:function(e){var t=this.tokenIndex+e;t>d,this.tokenEnd=t&u):(this.tokenIndex=this.tokenCount,this.next())},next:function(){var e=this.tokenIndex+1;e>d,this.tokenEnd=e&u):(this.tokenIndex=this.tokenCount,this.eof=!0,this.tokenType=s,this.tokenStart=this.tokenEnd=this.source.length)},forEachToken:function(e){for(var t=0,n=this.firstCharOffset;t>d,i,o,t)}},dump:function(){var e=this,t=new Array(this.tokenCount);return this.forEachToken(function(n,i,r,a){t[a]={idx:a,type:o[n],chunk:e.source.substring(i,r),balance:e.balance[a]}}),t}},e.exports=h},62146:function(e){var t="undefined"!=typeof Uint32Array?Uint32Array:Array;e.exports=function(e,n){return null===e||e.length";break;case"Property":o="<'"+e.name+"'>";break;case"Keyword":o=e.name;break;case"AtKeyword":o="@"+e.name;break;case"Function":o=e.name+"(";break;case"String":case"Token":o=e.value;break;case"Comma":o=",";break;default:throw new Error("Unknown node type `"+e.type+"`")}return t(o,e)}e.exports=function(e,i){var r=t,o=!1,a=!1;return"function"==typeof i?r=i:i&&(o=Boolean(i.forceBraces),a=Boolean(i.compact),"function"==typeof i.decorate&&(r=i.decorate)),n(e,r,o,a)}},37149:function(e,t,n){e.exports={SyntaxError:n(6063),parse:n(11261),generate:n(58298),walk:n(37363)}},11261:function(e,t,n){var i=n(57674),r=123,o=function(e){for(var t="function"==typeof Uint32Array?new Uint32Array(128):new Array(128),n=0;n<128;n++)t[n]=(i=String.fromCharCode(n),/[a-zA-Z0-9\-]/.test(i)?1:0);var i;return t}(),a={" ":1,"&&":2,"||":3,"|":4};function s(e){return e.substringToPos(e.findWsEnd(e.pos))}function l(e){for(var t=e.pos;t=128||0===o[n])break}return e.pos===t&&e.error("Expect a keyword"),e.substringToPos(t)}function c(e){for(var t=e.pos;t57)break}return e.pos===t&&e.error("Expect a number"),e.substringToPos(t)}function u(e){var t=e.str.indexOf("'",e.pos+1);return-1===t&&(e.pos=e.str.length,e.error("Expect an apostrophe")),e.substringToPos(t+1)}function d(e){var t,n=null;return e.eat(r),t=c(e),44===e.charCode()?(e.pos++,125!==e.charCode()&&(n=c(e))):n=t,e.eat(125),{min:Number(t),max:n?Number(n):0}}function h(e,t){var n=function(e){var t=null,n=!1;switch(e.charCode()){case 42:e.pos++,t={min:0,max:0};break;case 43:e.pos++,t={min:1,max:0};break;case 63:e.pos++,t={min:0,max:1};break;case 35:e.pos++,n=!0,t=e.charCode()===r?d(e):{min:1,max:0};break;case r:t=d(e);break;default:return null}return{type:"Multiplier",comma:n,min:t.min,max:t.max,term:null}}(e);return null!==n?(n.term=t,n):t}function p(e){var t=e.peek();return""===t?null:{type:"Token",value:t}}function f(e,t){function n(e,t){return{type:"Group",terms:e,combinator:t,disallowEmpty:!1,explicit:!1}}for(t=Object.keys(t).sort(function(e,t){return a[e]-a[t]});t.length>0;){for(var i=t.shift(),r=0,o=0;r1&&(e.splice(o,r-o,n(e.slice(o,r),i)),r=o+1),o=-1))}-1!==o&&t.length&&e.splice(o,r-o,n(e.slice(o,r),i))}return i}function m(e){for(var t,n=[],i={},r=null,o=e.pos;t=g(e);)"Spaces"!==t.type&&("Combinator"===t.type?(null!==r&&"Combinator"!==r.type||(e.pos=o,e.error("Unexpected combinator")),i[t.value]=!0):null!==r&&"Combinator"!==r.type&&(i[" "]=!0,n.push({type:"Combinator",value:" "})),n.push(t),r=t,o=e.pos);return null!==r&&"Combinator"===r.type&&(e.pos-=o,e.error("Unexpected combinator")),{type:"Group",terms:n,combinator:f(n,i)||" ",disallowEmpty:!1,explicit:!1}}function g(e){var t=e.charCode();if(t<128&&1===o[t])return function(e){var t;return t=l(e),40===e.charCode()?(e.pos++,{type:"Function",name:t}):h(e,{type:"Keyword",name:t})}(e);switch(t){case 93:break;case 91:return h(e,function(e){var t;return e.eat(91),t=m(e),e.eat(93),t.explicit=!0,33===e.charCode()&&(e.pos++,t.disallowEmpty=!0),t}(e));case 60:return 39===e.nextCharCode()?function(e){var t;return e.eat(60),e.eat(39),t=l(e),e.eat(39),e.eat(62),h(e,{type:"Property",name:t})}(e):function(e){var t,n=null;return e.eat(60),t=l(e),40===e.charCode()&&41===e.nextCharCode()&&(e.pos+=2,t+="()"),91===e.charCodeAt(e.findWsEnd(e.pos))&&(s(e),n=function(e){var t=null,n=null,i=1;return e.eat(91),45===e.charCode()&&(e.peek(),i=-1),-1==i&&8734===e.charCode()?e.peek():t=i*Number(c(e)),s(e),e.eat(44),s(e),8734===e.charCode()?e.peek():(i=1,45===e.charCode()&&(e.peek(),i=-1),n=i*Number(c(e))),e.eat(93),null===t&&null===n?null:{type:"Range",min:t,max:n}}(e)),e.eat(62),h(e,{type:"Type",name:t,opts:n})}(e);case 124:return{type:"Combinator",value:e.substringToPos(124===e.nextCharCode()?e.pos+2:e.pos+1)};case 38:return e.pos++,e.eat(38),{type:"Combinator",value:"&&"};case 44:return e.pos++,{type:"Comma"};case 39:return h(e,{type:"String",value:u(e)});case 32:case 9:case 10:case 13:case 12:return{type:"Spaces",value:s(e)};case 64:return(t=e.nextCharCode())<128&&1===o[t]?(e.pos++,{type:"AtKeyword",name:l(e)}):p(e);case 42:case 43:case 63:case 35:case 33:break;case r:if((t=e.nextCharCode())<48||t>57)return p(e);break;default:return p(e)}}function v(e){var t=new i(e),n=m(t);return t.pos!==e.length&&t.error("Unexpected input"),1===n.terms.length&&"Group"===n.terms[0].type&&(n=n.terms[0]),n}v("[a&&#|<'c'>*||e() f{2} /,(% g#{1,2} h{2,})]!"),e.exports=v},57674:function(e,t,n){var i=n(6063),r=function(e){this.str=e,this.pos=0};r.prototype={charCodeAt:function(e){return e");function _(e,t,n){var i={};for(var r in e)e[r].syntax&&(i[r]=n?e[r].syntax:c(e[r].syntax,{compact:t}));return i}function b(e,t,n){for(var r={},o=0,a=Object.entries(e);o3&&void 0!==arguments[3]?arguments[3]:null,r={type:t,name:n},o={type:t,name:n,parent:i,syntax:null,match:null};return"function"==typeof e?o.match=h(e,r):("string"==typeof e?Object.defineProperty(o,"syntax",{get:function(){return Object.defineProperty(o,"syntax",{value:l(e)}),o.syntax}}):o.syntax=e,Object.defineProperty(o,"match",{get:function(){return Object.defineProperty(o,"match",{value:h(o.syntax,r)}),o.match}})),o},addAtrule_:function(e,t){var n=this;t&&(this.atrules[e]={type:"Atrule",name:e,prelude:t.prelude?this.createDescriptor(t.prelude,"AtrulePrelude",e):null,descriptors:t.descriptors?Object.keys(t.descriptors).reduce(function(i,r){return i[r]=n.createDescriptor(t.descriptors[r],"AtruleDescriptor",r,e),i},{}):null})},addProperty_:function(e,t){t&&(this.properties[e]=this.createDescriptor(t,"Property",e))},addType_:function(e,t){t&&(this.types[e]=this.createDescriptor(t,"Type",e),t===s["-ms-legacy-expression"]&&(this.valueCommonSyntax=y))},checkAtruleName:function(e){if(!this.getAtrule(e))return new r("Unknown at-rule","@"+e)},checkAtrulePrelude:function(e,t){var n=this.checkAtruleName(e);if(n)return n;var i=this.getAtrule(e);return!i.prelude&&t?new SyntaxError("At-rule `@"+e+"` should not contain a prelude"):i.prelude&&!t?new SyntaxError("At-rule `@"+e+"` should contain a prelude"):void 0},checkAtruleDescriptorName:function(e,t){var n=this.checkAtruleName(e);if(n)return n;var i=this.getAtrule(e),o=a.keyword(t);return i.descriptors?i.descriptors[o.name]||i.descriptors[o.basename]?void 0:new r("Unknown at-rule descriptor",t):new SyntaxError("At-rule `@"+e+"` has no known descriptors")},checkPropertyName:function(e){return a.property(e).custom?new Error("Lexer matching doesn't applicable for custom properties"):this.getProperty(e)?void 0:new r("Unknown property",e)},matchAtrulePrelude:function(e,t){var n=this.checkAtrulePrelude(e,t);return n?w(null,n):t?S(this,this.getAtrule(e).prelude,t,!1):w(null,null)},matchAtruleDescriptor:function(e,t,n){var i=this.checkAtruleDescriptorName(e,t);if(i)return w(null,i);var r=this.getAtrule(e),o=a.keyword(t);return S(this,r.descriptors[o.name]||r.descriptors[o.basename],n,!1)},matchDeclaration:function(e){return"Declaration"!==e.type?w(null,new Error("Not a Declaration node")):this.matchProperty(e.property,e.value)},matchProperty:function(e,t){var n=this.checkPropertyName(e);return n?w(null,n):S(this,this.getProperty(e),t,!0)},matchType:function(e,t){var n=this.getType(e);return n?S(this,n,t,!1):w(null,new r("Unknown type",e))},match:function(e,t){return"string"==typeof e||e&&e.type?("string"!=typeof e&&e.match||(e=this.createDescriptor(e,"Type","anonymous")),S(this,e,t,!1)):w(null,new r("Bad syntax"))},findValueFragments:function(e,t,n,i){return m.matchFragments(this,t,this.matchProperty(e,t),n,i)},findDeclarationValueFragments:function(e,t,n){return m.matchFragments(this,e.value,this.matchDeclaration(e),t,n)},findAllFragments:function(e,t,n){var i=[];return this.syntax.walk(e,{visit:"Declaration",enter:(function(e){i.push.apply(i,this.findDeclarationValueFragments(e,t,n))}).bind(this)}),i},getAtrule:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=a.keyword(e),i=n.vendor&&t?this.atrules[n.name]||this.atrules[n.basename]:this.atrules[n.name];return i||null},getAtrulePrelude:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=this.getAtrule(e,t);return n&&n.prelude||null},getAtruleDescriptor:function(e,t){return this.atrules.hasOwnProperty(e)&&this.atrules.declarators&&this.atrules[e].declarators[t]||null},getProperty:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=a.property(e),i=n.vendor&&t?this.properties[n.name]||this.properties[n.basename]:this.properties[n.name];return i||null},getType:function(e){return this.types.hasOwnProperty(e)?this.types[e]:null},validate:function(){function e(i,r,o,a){if(o.hasOwnProperty(r))return o[r];o[r]=!1,null!==a.syntax&&u(a.syntax,function(a){if("Type"===a.type||"Property"===a.type){var s="Type"===a.type?i.types:i.properties,l="Type"===a.type?t:n;s.hasOwnProperty(a.name)&&!e(i,a.name,l,s[a.name])||(o[r]=!0)}},this)}var t={},n={};for(var i in this.types)e(this,i,t,this.types[i]);for(var i in this.properties)e(this,i,n,this.properties[i]);return t=Object.keys(t).filter(function(e){return t[e]}),n=Object.keys(n).filter(function(e){return n[e]}),t.length||n.length?{types:t,properties:n}:null},dump:function(e,t){return{generic:this.generic,types:_(this.types,!t,e),properties:_(this.properties,!t,e),atrules:b(this.atrules,!t,e)}},toString:function(){return JSON.stringify(this.dump())}},e.exports=x},40533:function(e,t,n){var i=n(92455),r=n(58298),o={offset:0,line:1,column:1};function a(e,t){var n=e&&e.loc&&e.loc[t];return n?"line"in n?s(n):n:null}function s(e,t){var n={offset:e.offset,line:e.line,column:e.column};if(t){var i=t.split(/\n|\r\n?|\f/);n.offset+=t.length,n.line+=i.length-1,n.column=1===i.length?n.column+t.length:i.pop().length+1}return n}e.exports={SyntaxReferenceError:function(e,t){var n=i("SyntaxReferenceError",e+(t?" `"+t+"`":""));return n.reference=t,n},SyntaxMatchError:function(e,t,n,l){var c=i("SyntaxMatchError",e),u=function(e,t){for(var n,i,r=e.tokens,l=e.longestMatch,c=l1?(n=a(u||t,"end")||s(o,f),i=s(n)):(n=a(u,"start")||s(a(t,"start")||o,f.slice(0,d)),i=a(u,"end")||s(n,f.substr(d,h))),{css:f,mismatchOffset:d,mismatchLength:h,start:n,end:i}}(l,n),d=u.css,h=u.mismatchOffset,p=u.mismatchLength,f=u.start,m=u.end;return c.rawMessage=e,c.syntax=t?r(t):"",c.css=d,c.mismatchOffset=h,c.mismatchLength=p,c.message=e+"\n syntax: "+c.syntax+"\n value: "+(d||"")+"\n --------"+new Array(c.mismatchOffset+1).join("-")+"^",Object.assign(c,f),c.loc={source:n&&n.loc&&n.loc.source||"",start:f,end:m},c}}},25533:function(e,t,n){var i=n(97555).isDigit,r=n(97555).cmpChar,o=n(97555).TYPE,a=o.Delim,s=o.WhiteSpace,l=o.Comment,c=o.Ident,u=o.Number,d=o.Dimension,h=45,p=!0;function f(e,t){return null!==e&&e.type===a&&e.value.charCodeAt(0)===t}function m(e,t,n){for(;null!==e&&(e.type===s||e.type===l);)e=n(++t);return t}function g(e,t,n,r){if(!e)return 0;var o=e.value.charCodeAt(t);if(43===o||o===h){if(n)return 0;t++}for(;t0?6:0;if(!i(a))return 0;if(++o>6)return 0}return o}function p(e,t,n){if(!e)return 0;for(;u(n(t),63);){if(++e>6)return 0;t++}return t}e.exports=function(e,t){var n=0;if(null===e||e.type!==a||!r(e.value,0,117))return 0;if(null===(e=t(++n)))return 0;if(u(e,43))return null===(e=t(++n))?0:e.type===a?p(h(e,0,!0),++n,t):u(e,63)?p(1,++n,t):0;if(e.type===l){if(!d(e,43))return 0;var i=h(e,1,!0);return 0===i?0:null===(e=t(++n))?n:e.type===c||e.type===l?d(e,45)&&h(e,1,!1)?n+1:0:p(i,n,t)}return e.type===c&&d(e,43)?p(h(e,1,!0),++n,t):0}},71473:function(e,t,n){var i=n(97555),r=i.isIdentifierStart,o=i.isHexDigit,a=i.isDigit,s=i.cmpStr,l=i.consumeNumber,c=i.TYPE,u=n(25533),d=n(70156),h=["unset","initial","inherit"],p=["calc(","-moz-calc(","-webkit-calc("];function f(e,t){return te.max)return!0}return!1}function _(e,t){var n=e.index,i=0;do{if(i++,e.balance<=n)break}while(e=t(i));return i}function b(e){return function(t,n,i){return null===t?0:t.type===c.Function&&g(t.value,p)?_(t,n):e(t,n,i)}}function w(e){return function(t){return null===t||t.type!==e?0:1}}function S(e){return function(t,n,i){if(null===t||t.type!==c.Dimension)return 0;var r=l(t.value,0);if(null!==e){var o=t.value.indexOf("\\",r),a=-1!==o&&v(t.value,o)?t.value.substring(r,o):t.value.substr(r);if(!1===e.hasOwnProperty(a.toLowerCase()))return 0}return y(i,t.value,r)?0:1}}function x(e){return"function"!=typeof e&&(e=function(){return 0}),function(t,n,i){return null!==t&&t.type===c.Number&&0===Number(t.value)?1:e(t,n,i)}}e.exports={"ident-token":w(c.Ident),"function-token":w(c.Function),"at-keyword-token":w(c.AtKeyword),"hash-token":w(c.Hash),"string-token":w(c.String),"bad-string-token":w(c.BadString),"url-token":w(c.Url),"bad-url-token":w(c.BadUrl),"delim-token":w(c.Delim),"number-token":w(c.Number),"percentage-token":w(c.Percentage),"dimension-token":w(c.Dimension),"whitespace-token":w(c.WhiteSpace),"CDO-token":w(c.CDO),"CDC-token":w(c.CDC),"colon-token":w(c.Colon),"semicolon-token":w(c.Semicolon),"comma-token":w(c.Comma),"[-token":w(c.LeftSquareBracket),"]-token":w(c.RightSquareBracket),"(-token":w(c.LeftParenthesis),")-token":w(c.RightParenthesis),"{-token":w(c.LeftCurlyBracket),"}-token":w(c.RightCurlyBracket),string:w(c.String),ident:w(c.Ident),"custom-ident":function(e){if(null===e||e.type!==c.Ident)return 0;var t=e.value.toLowerCase();return g(t,h)||m(t,"default")?0:1},"custom-property-name":function(e){return null===e||e.type!==c.Ident||45!==f(e.value,0)||45!==f(e.value,1)?0:1},"hex-color":function(e){if(null===e||e.type!==c.Hash)return 0;var t=e.value.length;if(4!==t&&5!==t&&7!==t&&9!==t)return 0;for(var n=1;ne.index||e.balancee.index||e.balance2&&40===e.charCodeAt(e.length-2)&&41===e.charCodeAt(e.length-1)}function c(e){return"Keyword"===e.type||"AtKeyword"===e.type||"Function"===e.type||"Type"===e.type&&l(e.name)}function u(e,t,n){switch(e){case" ":for(var i=r,a=t.length-1;a>=0;a--)i=s(p=t[a],i,o);return i;case"|":i=o;var d=null;for(a=t.length-1;a>=0;a--){if(c(p=t[a])&&(null===d&&a>0&&c(t[a-1])&&(i=s({type:"Enum",map:d=Object.create(null)},r,i)),null!==d)){var h=(l(p.name)?p.name.slice(0,-1):p.name).toLowerCase();if(h in d==0){d[h]=p;continue}}d=null,i=s(p,r,i)}return i;case"&&":if(t.length>5)return{type:"MatchOnce",terms:t,all:!0};for(i=o,a=t.length-1;a>=0;a--){var p=t[a];f=t.length>1?u(e,t.filter(function(e){return e!==p}),!1):r,i=s(p,f,i)}return i;case"||":if(t.length>5)return{type:"MatchOnce",terms:t,all:!1};for(i=n?r:o,a=t.length-1;a>=0;a--){var f;p=t[a],f=t.length>1?u(e,t.filter(function(e){return e!==p}),!0):r,i=s(p,f,i)}return i}}function d(e){if("function"==typeof e)return{type:"Generic",fn:e};switch(e.type){case"Group":var t=u(e.combinator,e.terms.map(d),!1);return e.disallowEmpty&&(t=s(t,a,o)),t;case"Multiplier":return function(e){var t=r,n=d(e.term);if(0===e.max)n=s(n,a,o),(t=s(n,null,o)).then=s(r,r,t),e.comma&&(t.then.else=s({type:"Comma",syntax:e},t,o));else for(var i=e.min||1;i<=e.max;i++)e.comma&&t!==r&&(t=s({type:"Comma",syntax:e},t,o)),t=s(n,s(r,r,t),o);if(0===e.min)t=s(r,r,t);else for(i=0;i=65&&i<=90&&(i|=32),i!==t.charCodeAt(n))return!1}return!0}function p(e){return null===e||e.type===l.Comma||e.type===l.Function||e.type===l.LeftParenthesis||e.type===l.LeftSquareBracket||e.type===l.LeftCurlyBracket||function(e){return e.type===l.Delim&&"?"!==e.value}(e)}function f(e){return null===e||e.type===l.RightParenthesis||e.type===l.RightSquareBracket||e.type===l.RightCurlyBracket||e.type===l.Delim}function m(e,t,n){function r(){do{A++,T=AZ&&(Z=A)}function _(){M=2===M.type?M.prev:{type:3,syntax:b.syntax,token:M.token,prev:M},b=b.prev}var b=null,w=null,S=null,x=null,C=0,k=null,T=null,A=-1,Z=0,M={type:0,syntax:null,token:null,prev:null};for(r();null===k&&++C<15e3;)switch(t.type){case"Match":if(null===w){if(null!==T&&(A!==e.length-1||"\\0"!==T.value&&"\\9"!==T.value)){t=a;break}k=c;break}if((t=w.nextState)===s){if(w.matchStack===M){t=a;break}t=o}for(;w.syntaxStack!==b;)_();w=w.prev;break;case"Mismatch":if(null!==x&&!1!==x)(null===S||A>S.tokenIndex)&&(S=x,x=!1);else if(null===S){k="Mismatch";break}t=S.nextState,w=S.thenStack,b=S.syntaxStack,M=S.matchStack,T=(A=S.tokenIndex)A){for(;A":"<'"+t.name+"'>"));if(!1!==x&&null!==T&&"Type"===t.type&&("custom-ident"===t.name&&T.type===l.Ident||"length"===t.name&&"0"===T.value)){null===x&&(x=m(t,S)),t=a;break}b={syntax:t.syntax,opts:t.syntax.opts||null!==b&&b.opts||null,prev:b},M={type:2,syntax:t.syntax,token:M.token,prev:M},t=q.match;break;case"Keyword":var N=t.name;if(null!==T){var D=T.value;if(-1!==D.indexOf("\\")&&(D=D.replace(/\\[09].*$/,"")),h(D,N)){y(),t=o;break}}t=a;break;case"AtKeyword":case"Function":if(null!==T&&h(T.value,t.name)){y(),t=o;break}t=a;break;case"Token":if(null!==T&&T.value===t.value){y(),t=o;break}t=a;break;case"Comma":null!==T&&T.type===l.Comma?p(M.token)?t=a:(y(),t=f(T)?a:o):t=p(M.token)||f(T)?o:a;break;case"String":var R="";for(P=A;P=0}function a(e){return Boolean(e)&&o(e.offset)&&o(e.line)&&o(e.column)}function s(e,t){return function(n,o){if(!n||n.constructor!==Object)return o(n,"Type of node should be an Object");for(var s in n){var l=!0;if(!1!==r.call(n,s)){if("type"===s)n.type!==e&&o(n,"Wrong node type `"+n.type+"`, expected `"+e+"`");else if("loc"===s){if(null===n.loc)continue;if(n.loc&&n.loc.constructor===Object)if("string"!=typeof n.loc.source)s+=".source";else if(a(n.loc.start)){if(a(n.loc.end))continue;s+=".end"}else s+=".start";l=!1}else if(t.hasOwnProperty(s)){var c=0;for(l=!1;!l&&c");else{if(!Array.isArray(d))throw new Error("Wrong value `"+d+"` in `"+e+"."+a+"` structure definition");l.push("List")}}o[a]=l.join(" | ")}return{docs:o,check:s(e,i)}}e.exports={getStructureFromConfig:function(e){var t={};if(e.node)for(var n in e.node)if(r.call(e.node,n)){var i=e.node[n];if(!i.structure)throw new Error("Missed `structure` field in `"+n+"` node type definition");t[n]=l(n,i)}return t}}},24988:function(e){function t(e){function t(e){return null!==e&&("Type"===e.type||"Property"===e.type||"Keyword"===e.type)}var n=null;return null!==this.matched&&function i(r){if(Array.isArray(r.match)){for(var o=0;o",needPositions:!1,onParseError:p,onParseErrorThrow:!1,parseAtrulePrelude:!0,parseRulePrelude:!0,parseValue:!0,parseCustomProperty:!1,readSequence:h,createList:function(){return new a},createSingleNodeList:function(e){return(new a).appendData(e)},getFirstListNode:function(e){return e&&e.first()},getLastListNode:function(e){return e.last()},parseWithFallback:function(e,t){var n=this.scanner.tokenIndex;try{return e.call(this)}catch(r){if(this.onParseErrorThrow)throw r;var i=t.call(this,n);return this.onParseErrorThrow=!0,this.onParseError(r,i),this.onParseErrorThrow=!1,i}},lookupNonWSType:function(e){do{var t=this.scanner.lookupType(e++);if(t!==g)return t}while(0!==t);return 0},eat:function(e){if(this.scanner.tokenType!==e){var t=this.scanner.tokenStart,n=m[e]+" is expected";switch(e){case y:this.scanner.tokenType===_||this.scanner.tokenType===b?(t=this.scanner.tokenEnd-1,n="Identifier is expected but function found"):n="Identifier is expected";break;case w:this.scanner.isDelim(35)&&(this.scanner.next(),t++,n="Name is expected");break;case S:this.scanner.tokenType===x&&(t=this.scanner.tokenEnd,n="Percent sign is expected");break;default:this.scanner.source.charCodeAt(this.scanner.tokenStart)===e&&(t+=1)}this.error(n,t)}this.scanner.next()},consume:function(e){var t=this.scanner.getTokenValue();return this.eat(e),t},consumeFunctionName:function(){var e=this.scanner.source.substring(this.scanner.tokenStart,this.scanner.tokenEnd-1);return this.eat(_),e},getLocation:function(e,t){return this.needPositions?this.locationMap.getLocationRange(e,t,this.filename):null},getLocationFromList:function(e){if(this.needPositions){var t=this.getFirstListNode(e),n=this.getLastListNode(e);return this.locationMap.getLocationRange(null!==t?t.loc.start.offset-this.locationMap.startOffset:this.scanner.tokenStart,null!==n?n.loc.end.offset-this.locationMap.startOffset:this.scanner.tokenStart,this.filename)}return null},error:function(e,t){var n=this.locationMap.getLocation(void 0!==t&&t",t.needPositions=Boolean(n.positions),t.onParseError="function"==typeof n.onParseError?n.onParseError:p,t.onParseErrorThrow=!1,t.parseAtrulePrelude=!("parseAtrulePrelude"in n)||Boolean(n.parseAtrulePrelude),t.parseRulePrelude=!("parseRulePrelude"in n)||Boolean(n.parseRulePrelude),t.parseValue=!("parseValue"in n)||Boolean(n.parseValue),t.parseCustomProperty="parseCustomProperty"in n&&Boolean(n.parseCustomProperty),!t.context.hasOwnProperty(r))throw new Error("Unknown context `"+r+"`");return"function"==typeof o&&t.scanner.forEachToken(function(n,i,r){if(n===v){var a=t.getLocation(i,r),s=d(e,r-2,r,"*/")?e.slice(i+2,r-2):e.slice(i+2,r);o(s,a)}}),i=t.context[r].call(t,n),t.scanner.eof||t.error(),i}}},15785:function(e,t,n){var i=n(97555).TYPE,r=i.WhiteSpace,o=i.Comment;e.exports=function(e){var t=this.createList(),n=null,i={recognizer:e,space:null,ignoreWS:!1,ignoreWSAfter:!1};for(this.scanner.skipSC();!this.scanner.eof;){switch(this.scanner.tokenType){case o:this.scanner.next();continue;case r:i.ignoreWS?this.scanner.next():i.space=this.WhiteSpace();continue}if(void 0===(n=e.getNode.call(this,i)))break;null!==i.space&&(t.push(i.space),i.space=null),t.push(n),i.ignoreWSAfter?(i.ignoreWSAfter=!1,i.ignoreWS=!0):i.ignoreWS=!1}return t}},71713:function(e){e.exports={parse:{prelude:null,block:function(){return this.Block(!0)}}}},88208:function(e,t,n){var i=n(97555).TYPE,r=i.String,o=i.Ident,a=i.Url,s=i.Function,l=i.LeftParenthesis;e.exports={parse:{prelude:function(){var e=this.createList();switch(this.scanner.skipSC(),this.scanner.tokenType){case r:e.push(this.String());break;case a:case s:e.push(this.Url());break;default:this.error("String or url() is expected")}return this.lookupNonWSType(0)!==o&&this.lookupNonWSType(0)!==l||(e.push(this.WhiteSpace()),e.push(this.MediaQueryList())),e},block:null}}},55682:function(e,t,n){e.exports={"font-face":n(71713),import:n(88208),media:n(81706),page:n(93949),supports:n(46928)}},81706:function(e){e.exports={parse:{prelude:function(){return this.createSingleNodeList(this.MediaQueryList())},block:function(){return this.Block(!1)}}}},93949:function(e){e.exports={parse:{prelude:function(){return this.createSingleNodeList(this.SelectorList())},block:function(){return this.Block(!0)}}}},46928:function(e,t,n){var i=n(97555).TYPE,r=i.WhiteSpace,o=i.Comment,a=i.Ident,s=i.Function,l=i.Colon,c=i.LeftParenthesis;function u(){return this.createSingleNodeList(this.Raw(this.scanner.tokenIndex,null,!1))}function d(){return this.scanner.skipSC(),this.scanner.tokenType===a&&this.lookupNonWSType(1)===l?this.createSingleNodeList(this.Declaration()):h.call(this)}function h(){var e,t=this.createList(),n=null;this.scanner.skipSC();e:for(;!this.scanner.eof;){switch(this.scanner.tokenType){case r:n=this.WhiteSpace();continue;case o:this.scanner.next();continue;case s:e=this.Function(u,this.scope.AtrulePrelude);break;case a:e=this.Identifier();break;case c:e=this.Parentheses(d,this.scope.AtrulePrelude);break;default:break e}null!==n&&(t.push(n),n=null),t.push(e)}return t}e.exports={parse:{prelude:function(){var e=h.call(this);return null===this.getFirstListNode(e)&&this.error("Condition is expected"),e},block:function(){return this.Block(!1)}}}},53901:function(e,t,n){var i=n(57695);e.exports={generic:!0,types:i.types,atrules:i.atrules,properties:i.properties,node:n(5678)}},15249:function(e,t,n){var i=n(6326).default,r=Object.prototype.hasOwnProperty,o={generic:!0,types:c,atrules:{prelude:u,descriptors:u},properties:c,parseContext:function(e,t){return Object.assign(e,t)},scope:function e(t,n){for(var i in n)r.call(n,i)&&(a(t[i])?e(t[i],s(n[i])):t[i]=s(n[i]));return t},atrule:["parse"],pseudo:["parse"],node:["name","structure","parse","generate","walkContext"]};function a(e){return e&&e.constructor===Object}function s(e){return a(e)?Object.assign({},e):e}function l(e,t){return"string"==typeof t&&/^\s*\|/.test(t)?"string"==typeof e?e+t:t.replace(/^\s*\|\s*/,""):t||null}function c(e,t){if("string"==typeof t)return l(e,t);var n=Object.assign({},e);for(var i in t)r.call(t,i)&&(n[i]=l(r.call(e,i)?e[i]:void 0,t[i]));return n}function u(e,t){var n=c(e,t);return!a(n)||Object.keys(n).length?n:null}function d(e,t,n){for(var o in n)if(!1!==r.call(n,o))if(!0===n[o])o in t&&r.call(t,o)&&(e[o]=s(t[o]));else if(n[o])if("function"==typeof n[o]){var l=n[o];e[o]=l({},e[o]),e[o]=l(e[o]||{},t[o])}else if(a(n[o])){var c={};for(var u in e[o])c[u]=d({},e[o][u],n[o]);for(var h in t[o])c[h]=d(c[h]||{},t[o][h],n[o]);e[o]=c}else if(Array.isArray(n[o])){for(var p={},f=n[o].reduce(function(e,t){return e[t]=!0,e},{}),m=0,g=Object.entries(e[o]||{});m0&&this.scanner.skip(e),0===t&&(n=this.scanner.source.charCodeAt(this.scanner.tokenStart))!==d&&n!==h&&this.error("Number sign is expected"),g.call(this,0!==t),t===h?"-"+this.consume(c):this.consume(c)}e.exports={name:"AnPlusB",structure:{a:[String,null],b:[String,null]},parse:function(){var e=this.scanner.tokenStart,t=null,n=null;if(this.scanner.tokenType===c)g.call(this,!1),n=this.consume(c);else if(this.scanner.tokenType===l&&i(this.scanner.source,this.scanner.tokenStart,h))switch(t="-1",v.call(this,1,p),this.scanner.getTokenLength()){case 2:this.scanner.next(),n=y.call(this);break;case 3:v.call(this,2,h),this.scanner.next(),this.scanner.skipSC(),g.call(this,f),n="-"+this.consume(c);break;default:v.call(this,2,h),m.call(this,3,f),this.scanner.next(),n=this.scanner.substrToCursor(e+2)}else if(this.scanner.tokenType===l||this.scanner.isDelim(d)&&this.scanner.lookupType(1)===l){var o=0;switch(t="1",this.scanner.isDelim(d)&&(o=1,this.scanner.next()),v.call(this,0,p),this.scanner.getTokenLength()){case 1:this.scanner.next(),n=y.call(this);break;case 2:v.call(this,1,h),this.scanner.next(),this.scanner.skipSC(),g.call(this,f),n="-"+this.consume(c);break;default:v.call(this,1,h),m.call(this,2,f),this.scanner.next(),n=this.scanner.substrToCursor(e+o+1)}}else if(this.scanner.tokenType===u){for(var a=this.scanner.source.charCodeAt(this.scanner.tokenStart),s=this.scanner.tokenStart+(o=a===d||a===h);s=2&&42===this.scanner.source.charCodeAt(t-2)&&47===this.scanner.source.charCodeAt(t-1)&&(t-=2),{type:"Comment",loc:this.getLocation(e,this.scanner.tokenStart),value:this.scanner.source.substring(e+2,t)}},generate:function(e){this.chunk("/*"),this.chunk(e.value),this.chunk("*/")}}},7217:function(e,t,n){var i=n(50643).isCustomProperty,r=n(97555).TYPE,o=n(89604).mode,a=r.Ident,s=r.Hash,l=r.Colon,c=r.Semicolon,u=r.Delim,d=r.WhiteSpace;function h(e){return this.Raw(e,o.exclamationMarkOrSemicolon,!0)}function p(e){return this.Raw(e,o.exclamationMarkOrSemicolon,!1)}function f(){var e=this.scanner.tokenIndex,t=this.Value();return"Raw"!==t.type&&!1===this.scanner.eof&&this.scanner.tokenType!==c&&!1===this.scanner.isDelim(33)&&!1===this.scanner.isBalanceEdge(e)&&this.error(),t}function m(){var e=this.scanner.tokenStart;if(this.scanner.tokenType===u)switch(this.scanner.source.charCodeAt(this.scanner.tokenStart)){case 42:case 36:case 43:case 35:case 38:this.scanner.next();break;case 47:this.scanner.next(),this.scanner.isDelim(47)&&this.scanner.next()}return this.eat(this.scanner.tokenType===s?s:a),this.scanner.substrToCursor(e)}function g(){this.eat(u),this.scanner.skipSC();var e=this.consume(a);return"important"===e||e}e.exports={name:"Declaration",structure:{important:[Boolean,String],property:String,value:["Value","Raw"]},parse:function(){var e,t=this.scanner.tokenStart,n=this.scanner.tokenIndex,r=m.call(this),o=i(r),a=o?this.parseCustomProperty:this.parseValue,s=o?p:h,u=!1;this.scanner.skipSC(),this.eat(l);var v=this.scanner.tokenIndex;if(o||this.scanner.skipSC(),e=a?this.parseWithFallback(f,s):s.call(this,this.scanner.tokenIndex),o&&"Value"===e.type&&e.children.isEmpty())for(var y=v-this.scanner.tokenIndex;y<=0;y++)if(this.scanner.lookupType(y)===d){e.children.appendData({type:"WhiteSpace",loc:null,value:" "});break}return this.scanner.isDelim(33)&&(u=g.call(this),this.scanner.skipSC()),!1===this.scanner.eof&&this.scanner.tokenType!==c&&!1===this.scanner.isBalanceEdge(n)&&this.error(),{type:"Declaration",loc:this.getLocation(t,this.scanner.tokenStart),important:u,property:r,value:e}},generate:function(e){this.chunk(e.property),this.chunk(":"),this.node(e.value),e.important&&this.chunk(!0===e.important?"!important":"!"+e.important)},walkContext:"declaration"}},69013:function(e,t,n){var i=n(97555).TYPE,r=n(89604).mode,o=i.WhiteSpace,a=i.Comment,s=i.Semicolon;function l(e){return this.Raw(e,r.semicolonIncluded,!0)}e.exports={name:"DeclarationList",structure:{children:[["Declaration"]]},parse:function(){for(var e=this.createList();!this.scanner.eof;)switch(this.scanner.tokenType){case o:case a:case s:this.scanner.next();break;default:e.push(this.parseWithFallback(this.Declaration,l))}return{type:"DeclarationList",loc:this.getLocationFromList(e),children:e}},generate:function(e){this.children(e,function(e){"Declaration"===e.type&&this.chunk(";")})}}},68241:function(e,t,n){var i=n(74586).consumeNumber,r=n(97555).TYPE.Dimension;e.exports={name:"Dimension",structure:{value:String,unit:String},parse:function(){var e=this.scanner.tokenStart,t=i(this.scanner.source,e);return this.eat(r),{type:"Dimension",loc:this.getLocation(e,this.scanner.tokenStart),value:this.scanner.source.substring(e,t),unit:this.scanner.source.substring(t,this.scanner.tokenStart)}},generate:function(e){this.chunk(e.value),this.chunk(e.unit)}}},60298:function(e,t,n){var i=n(97555).TYPE.RightParenthesis;e.exports={name:"Function",structure:{name:String,children:[[]]},parse:function(e,t){var n,r=this.scanner.tokenStart,o=this.consumeFunctionName(),a=o.toLowerCase();return n=t.hasOwnProperty(a)?t[a].call(this,t):e.call(this,t),this.scanner.eof||this.eat(i),{type:"Function",loc:this.getLocation(r,this.scanner.tokenStart),name:o,children:n}},generate:function(e){this.chunk(e.name),this.chunk("("),this.children(e),this.chunk(")")},walkContext:"function"}},50759:function(e,t,n){var i=n(97555).TYPE.Hash;e.exports={name:"Hash",structure:{value:String},parse:function(){var e=this.scanner.tokenStart;return this.eat(i),{type:"Hash",loc:this.getLocation(e,this.scanner.tokenStart),value:this.scanner.substrToCursor(e+1)}},generate:function(e){this.chunk("#"),this.chunk(e.value)}}},37701:function(e,t,n){var i=n(97555).TYPE.Hash;e.exports={name:"IdSelector",structure:{name:String},parse:function(){var e=this.scanner.tokenStart;return this.eat(i),{type:"IdSelector",loc:this.getLocation(e,this.scanner.tokenStart),name:this.scanner.substrToCursor(e+1)}},generate:function(e){this.chunk("#"),this.chunk(e.name)}}},71392:function(e,t,n){var i=n(97555).TYPE.Ident;e.exports={name:"Identifier",structure:{name:String},parse:function(){return{type:"Identifier",loc:this.getLocation(this.scanner.tokenStart,this.scanner.tokenEnd),name:this.consume(i)}},generate:function(e){this.chunk(e.name)}}},94179:function(e,t,n){var i=n(97555).TYPE,r=i.Ident,o=i.Number,a=i.Dimension,s=i.LeftParenthesis,l=i.RightParenthesis,c=i.Colon,u=i.Delim;e.exports={name:"MediaFeature",structure:{name:String,value:["Identifier","Number","Dimension","Ratio",null]},parse:function(){var e,t=this.scanner.tokenStart,n=null;if(this.eat(s),this.scanner.skipSC(),e=this.consume(r),this.scanner.skipSC(),this.scanner.tokenType!==l){switch(this.eat(c),this.scanner.skipSC(),this.scanner.tokenType){case o:n=this.lookupNonWSType(1)===u?this.Ratio():this.Number();break;case a:n=this.Dimension();break;case r:n=this.Identifier();break;default:this.error("Number, dimension, ratio or identifier is expected")}this.scanner.skipSC()}return this.eat(l),{type:"MediaFeature",loc:this.getLocation(t,this.scanner.tokenStart),name:e,value:n}},generate:function(e){this.chunk("("),this.chunk(e.name),null!==e.value&&(this.chunk(":"),this.node(e.value)),this.chunk(")")}}},32107:function(e,t,n){var i=n(97555).TYPE,r=i.WhiteSpace,o=i.Comment,a=i.Ident,s=i.LeftParenthesis;e.exports={name:"MediaQuery",structure:{children:[["Identifier","MediaFeature","WhiteSpace"]]},parse:function(){this.scanner.skipSC();var e=this.createList(),t=null,n=null;e:for(;!this.scanner.eof;){switch(this.scanner.tokenType){case o:this.scanner.next();continue;case r:n=this.WhiteSpace();continue;case a:t=this.Identifier();break;case s:t=this.MediaFeature();break;default:break e}null!==n&&(e.push(n),n=null),e.push(t)}return null===t&&this.error("Identifier or parenthesis is expected"),{type:"MediaQuery",loc:this.getLocationFromList(e),children:e}},generate:function(e){this.children(e)}}},54459:function(e,t,n){var i=n(97555).TYPE.Comma;e.exports={name:"MediaQueryList",structure:{children:[["MediaQuery"]]},parse:function(e){var t=this.createList();for(this.scanner.skipSC();!this.scanner.eof&&(t.push(this.MediaQuery(e)),this.scanner.tokenType===i);)this.scanner.next();return{type:"MediaQueryList",loc:this.getLocationFromList(t),children:t}},generate:function(e){this.children(e,function(){this.chunk(",")})}}},61123:function(e){e.exports={name:"Nth",structure:{nth:["AnPlusB","Identifier"],selector:["SelectorList",null]},parse:function(e){this.scanner.skipSC();var t,n=this.scanner.tokenStart,i=n,r=null;return t=this.scanner.lookupValue(0,"odd")||this.scanner.lookupValue(0,"even")?this.Identifier():this.AnPlusB(),this.scanner.skipSC(),e&&this.scanner.lookupValue(0,"of")?(this.scanner.next(),r=this.SelectorList(),this.needPositions&&(i=this.getLastListNode(r.children).loc.end.offset)):this.needPositions&&(i=t.loc.end.offset),{type:"Nth",loc:this.getLocation(n,i),nth:t,selector:r}},generate:function(e){this.node(e.nth),null!==e.selector&&(this.chunk(" of "),this.node(e.selector))}}},63902:function(e,t,n){var i=n(97555).TYPE.Number;e.exports={name:"Number",structure:{value:String},parse:function(){return{type:"Number",loc:this.getLocation(this.scanner.tokenStart,this.scanner.tokenEnd),value:this.consume(i)}},generate:function(e){this.chunk(e.value)}}},7249:function(e){e.exports={name:"Operator",structure:{value:String},parse:function(){var e=this.scanner.tokenStart;return this.scanner.next(),{type:"Operator",loc:this.getLocation(e,this.scanner.tokenStart),value:this.scanner.substrToCursor(e)}},generate:function(e){this.chunk(e.value)}}},34875:function(e,t,n){var i=n(97555).TYPE,r=i.LeftParenthesis,o=i.RightParenthesis;e.exports={name:"Parentheses",structure:{children:[[]]},parse:function(e,t){var n,i=this.scanner.tokenStart;return this.eat(r),n=e.call(this,t),this.scanner.eof||this.eat(o),{type:"Parentheses",loc:this.getLocation(i,this.scanner.tokenStart),children:n}},generate:function(e){this.chunk("("),this.children(e),this.chunk(")")}}},62173:function(e,t,n){var i=n(74586).consumeNumber,r=n(97555).TYPE.Percentage;e.exports={name:"Percentage",structure:{value:String},parse:function(){var e=this.scanner.tokenStart,t=i(this.scanner.source,e);return this.eat(r),{type:"Percentage",loc:this.getLocation(e,this.scanner.tokenStart),value:this.scanner.source.substring(e,t)}},generate:function(e){this.chunk(e.value),this.chunk("%")}}},38887:function(e,t,n){var i=n(97555).TYPE,r=i.Ident,o=i.Function,a=i.Colon,s=i.RightParenthesis;e.exports={name:"PseudoClassSelector",structure:{name:String,children:[["Raw"],null]},parse:function(){var e,t,n=this.scanner.tokenStart,i=null;return this.eat(a),this.scanner.tokenType===o?(t=(e=this.consumeFunctionName()).toLowerCase(),this.pseudo.hasOwnProperty(t)?(this.scanner.skipSC(),i=this.pseudo[t].call(this),this.scanner.skipSC()):(i=this.createList()).push(this.Raw(this.scanner.tokenIndex,null,!1)),this.eat(s)):e=this.consume(r),{type:"PseudoClassSelector",loc:this.getLocation(n,this.scanner.tokenStart),name:e,children:i}},generate:function(e){this.chunk(":"),this.chunk(e.name),null!==e.children&&(this.chunk("("),this.children(e),this.chunk(")"))},walkContext:"function"}},78076:function(e,t,n){var i=n(97555).TYPE,r=i.Ident,o=i.Function,a=i.Colon,s=i.RightParenthesis;e.exports={name:"PseudoElementSelector",structure:{name:String,children:[["Raw"],null]},parse:function(){var e,t,n=this.scanner.tokenStart,i=null;return this.eat(a),this.eat(a),this.scanner.tokenType===o?(t=(e=this.consumeFunctionName()).toLowerCase(),this.pseudo.hasOwnProperty(t)?(this.scanner.skipSC(),i=this.pseudo[t].call(this),this.scanner.skipSC()):(i=this.createList()).push(this.Raw(this.scanner.tokenIndex,null,!1)),this.eat(s)):e=this.consume(r),{type:"PseudoElementSelector",loc:this.getLocation(n,this.scanner.tokenStart),name:e,children:i}},generate:function(e){this.chunk("::"),this.chunk(e.name),null!==e.children&&(this.chunk("("),this.children(e),this.chunk(")"))},walkContext:"function"}},15482:function(e,t,n){var i=n(97555).isDigit,r=n(97555).TYPE,o=r.Number,a=r.Delim;function s(){this.scanner.skipWS();for(var e=this.consume(o),t=0;t0&&this.scanner.lookupType(-1)===r?this.scanner.tokenIndex>1?this.scanner.getTokenStart(this.scanner.tokenIndex-1):this.scanner.firstCharOffset:this.scanner.tokenStart}function c(){return 0}e.exports={name:"Raw",structure:{value:String},parse:function(e,t,n){var i,r=this.scanner.getTokenStart(e);return this.scanner.skip(this.scanner.getRawLength(e,t||c)),i=n&&this.scanner.tokenStart>r?l.call(this):this.scanner.tokenStart,{type:"Raw",loc:this.getLocation(r,i),value:this.scanner.source.substring(r,i)}},generate:function(e){this.chunk(e.value)},mode:{default:c,leftCurlyBracket:function(e){return e===a?1:0},leftCurlyBracketOrSemicolon:function(e){return e===a||e===o?1:0},exclamationMarkOrSemicolon:function(e,t,n){return e===s&&33===t.charCodeAt(n)||e===o?1:0},semicolonIncluded:function(e){return e===o?2:0}}}},56064:function(e,t,n){var i=n(97555).TYPE,r=n(89604).mode,o=i.LeftCurlyBracket;function a(e){return this.Raw(e,r.leftCurlyBracket,!0)}function s(){var e=this.SelectorList();return"Raw"!==e.type&&!1===this.scanner.eof&&this.scanner.tokenType!==o&&this.error(),e}e.exports={name:"Rule",structure:{prelude:["SelectorList","Raw"],block:["Block"]},parse:function(){var e,t,n=this.scanner.tokenIndex,i=this.scanner.tokenStart;return e=this.parseRulePrelude?this.parseWithFallback(s,a):a.call(this,n),t=this.Block(!0),{type:"Rule",loc:this.getLocation(i,this.scanner.tokenStart),prelude:e,block:t}},generate:function(e){this.node(e.prelude),this.node(e.block)},walkContext:"rule"}},43042:function(e){e.exports={name:"Selector",structure:{children:[["TypeSelector","IdSelector","ClassSelector","AttributeSelector","PseudoClassSelector","PseudoElementSelector","Combinator","WhiteSpace"]]},parse:function(){var e=this.readSequence(this.scope.Selector);return null===this.getFirstListNode(e)&&this.error("Selector is expected"),{type:"Selector",loc:this.getLocationFromList(e),children:e}},generate:function(e){this.children(e)}}},38444:function(e,t,n){var i=n(97555).TYPE.Comma;e.exports={name:"SelectorList",structure:{children:[["Selector","Raw"]]},parse:function(){for(var e=this.createList();!this.scanner.eof&&(e.push(this.Selector()),this.scanner.tokenType===i);)this.scanner.next();return{type:"SelectorList",loc:this.getLocationFromList(e),children:e}},generate:function(e){this.children(e,function(){this.chunk(",")})},walkContext:"selector"}},12565:function(e,t,n){var i=n(97555).TYPE.String;e.exports={name:"String",structure:{value:String},parse:function(){return{type:"String",loc:this.getLocation(this.scanner.tokenStart,this.scanner.tokenEnd),value:this.consume(i)}},generate:function(e){this.chunk(e.value)}}},91348:function(e,t,n){var i=n(97555).TYPE,r=i.WhiteSpace,o=i.Comment,a=i.AtKeyword,s=i.CDO,l=i.CDC;function c(e){return this.Raw(e,null,!1)}e.exports={name:"StyleSheet",structure:{children:[["Comment","CDO","CDC","Atrule","Rule","Raw"]]},parse:function(){for(var e,t=this.scanner.tokenStart,n=this.createList();!this.scanner.eof;){switch(this.scanner.tokenType){case r:this.scanner.next();continue;case o:if(33!==this.scanner.source.charCodeAt(this.scanner.tokenStart+2)){this.scanner.next();continue}e=this.Comment();break;case s:e=this.CDO();break;case l:e=this.CDC();break;case a:e=this.parseWithFallback(this.Atrule,c);break;default:e=this.parseWithFallback(this.Rule,c)}n.push(e)}return{type:"StyleSheet",loc:this.getLocation(t,this.scanner.tokenStart),children:n}},generate:function(e){this.children(e)},walkContext:"stylesheet"}},16983:function(e,t,n){var i=n(97555).TYPE.Ident;function r(){this.scanner.tokenType!==i&&!1===this.scanner.isDelim(42)&&this.error("Identifier or asterisk is expected"),this.scanner.next()}e.exports={name:"TypeSelector",structure:{name:String},parse:function(){var e=this.scanner.tokenStart;return this.scanner.isDelim(124)?(this.scanner.next(),r.call(this)):(r.call(this),this.scanner.isDelim(124)&&(this.scanner.next(),r.call(this))),{type:"TypeSelector",loc:this.getLocation(e,this.scanner.tokenStart),name:this.scanner.substrToCursor(e)}},generate:function(e){this.chunk(e.name)}}},95616:function(e,t,n){var i=n(97555).isHexDigit,r=n(97555).cmpChar,o=n(97555).TYPE,a=n(97555).NAME,s=o.Ident,l=o.Number,c=o.Dimension;function u(e,t){for(var n=this.scanner.tokenStart+e,r=0;n6&&this.error("Too many hex digits",n)}return this.scanner.next(),r}function d(e){for(var t=0;this.scanner.isDelim(63);)++t>e&&this.error("Too many question marks"),this.scanner.next()}function h(e){this.scanner.source.charCodeAt(this.scanner.tokenStart)!==e&&this.error(a[e]+" is expected")}function p(){var e=0;return this.scanner.isDelim(43)?(this.scanner.next(),this.scanner.tokenType===s?void((e=u.call(this,0,!0))>0&&d.call(this,6-e)):this.scanner.isDelim(63)?(this.scanner.next(),void d.call(this,5)):void this.error("Hex digit or question mark is expected")):this.scanner.tokenType===l?(h.call(this,43),e=u.call(this,1,!0),this.scanner.isDelim(63)?void d.call(this,6-e):this.scanner.tokenType===c||this.scanner.tokenType===l?(h.call(this,45),void u.call(this,1,!1)):void 0):this.scanner.tokenType===c?(h.call(this,43),void((e=u.call(this,1,!0))>0&&d.call(this,6-e))):void this.error()}e.exports={name:"UnicodeRange",structure:{value:String},parse:function(){var e=this.scanner.tokenStart;return r(this.scanner.source,e,117)||this.error("U is expected"),r(this.scanner.source,e+1,43)||this.error("Plus sign is expected"),this.scanner.next(),p.call(this),{type:"UnicodeRange",loc:this.getLocation(e,this.scanner.tokenStart),value:this.scanner.substrToCursor(e)}},generate:function(e){this.chunk(e.value)}}},72796:function(e,t,n){var i=n(97555).isWhiteSpace,r=n(97555).cmpStr,o=n(97555).TYPE,a=o.Function,s=o.Url,l=o.RightParenthesis;e.exports={name:"Url",structure:{value:["String","Raw"]},parse:function(){var e,t=this.scanner.tokenStart;switch(this.scanner.tokenType){case s:for(var n=t+4,o=this.scanner.tokenEnd-1;n=48&&e<=57}function n(e){return e>=65&&e<=90}function i(e){return e>=97&&e<=122}function r(e){return n(e)||i(e)}function o(e){return e>=128}function a(e){return r(e)||o(e)||95===e}function s(e){return e>=0&&e<=8||11===e||e>=14&&e<=31||127===e}function l(e){return 10===e||13===e||12===e}function c(e){return l(e)||32===e||9===e}function u(e,t){return 92===e&&!l(t)&&0!==t}var d=new Array(128);p.Eof=128,p.WhiteSpace=130,p.Digit=131,p.NameStart=132,p.NonPrintable=133;for(var h=0;h=65&&e<=70||e>=97&&e<=102},isUppercaseLetter:n,isLowercaseLetter:i,isLetter:r,isNonAscii:o,isNameStart:a,isName:function(e){return a(e)||t(e)||45===e},isNonPrintable:s,isNewline:l,isWhiteSpace:c,isValidEscape:u,isIdentifierStart:function(e,t,n){return 45===e?a(t)||45===t||u(t,n):!!a(e)||92===e&&u(e,t)},isNumberStart:function(e,n,i){return 43===e||45===e?t(n)?2:46===n&&t(i)?3:0:46===e?t(n)?2:0:t(e)?1:0},isBOM:function(e){return 65279===e||65534===e?1:0},charCodeCategory:p}},97077:function(e){var t={EOF:0,Ident:1,Function:2,AtKeyword:3,Hash:4,String:5,BadString:6,Url:7,BadUrl:8,Delim:9,Number:10,Percentage:11,Dimension:12,WhiteSpace:13,CDO:14,CDC:15,Colon:16,Semicolon:17,Comma:18,LeftSquareBracket:19,RightSquareBracket:20,LeftParenthesis:21,RightParenthesis:22,LeftCurlyBracket:23,RightCurlyBracket:24,Comment:25},n=Object.keys(t).reduce(function(e,n){return e[t[n]]=n,e},{});e.exports={TYPE:t,NAME:n}},97555:function(e,t,n){var i=n(13146),r=n(62146),o=n(97077),a=o.TYPE,s=n(88312),l=s.isNewline,c=s.isName,u=s.isValidEscape,d=s.isNumberStart,h=s.isIdentifierStart,p=s.charCodeCategory,f=s.isBOM,m=n(74586),g=m.cmpStr,v=m.getNewlineLength,y=m.findWhiteSpaceEnd,_=m.consumeEscaped,b=m.consumeName,w=m.consumeNumber,S=m.consumeBadUrlRemnants,x=16777215,C=24;function k(e,t){function n(t){return t=e.length?void(O>C,A[Z]=I,A[I++]=Z;Ie.length)return!1;for(var r=t;r=0&&l(e.charCodeAt(t));t--);return t+1},findWhiteSpaceEnd:function(e,t){for(;t=2&&45===e.charCodeAt(t)&&45===e.charCodeAt(t+1)}function o(e,t){if(e.length-(t=t||0)>=3&&45===e.charCodeAt(t)&&45!==e.charCodeAt(t+1)){var n=e.indexOf("-",t+2);if(-1!==n)return e.substring(t,n+1)}return""}e.exports={keyword:function(e){if(t.call(n,e))return n[e];var i=e.toLowerCase();if(t.call(n,i))return n[e]=n[i];var a=r(i,0),s=a?"":o(i,0);return n[e]=Object.freeze({basename:i.substr(s.length),name:i,vendor:s,prefix:s,custom:a})},property:function(e){if(t.call(i,e))return i[e];var n=e,a=e[0];"/"===a?a="/"===e[1]?"//":"/":"_"!==a&&"*"!==a&&"$"!==a&&"#"!==a&&"+"!==a&&"&"!==a&&(a="");var s=r(n,a.length);if(!s&&(n=n.toLowerCase(),t.call(i,n)))return i[e]=i[n];var l=s?"":o(n,a.length),c=n.substr(0,a.length+l.length);return i[e]=Object.freeze({basename:n.substr(c.length),name:n.substr(a.length),hack:a,vendor:l,prefix:c,custom:s})},isCustomProperty:r,vendorPrefix:o}},24523:function(e){var t=Object.prototype.hasOwnProperty,n=function(){};function i(e){return"function"==typeof e?e:n}function r(e,t){return function(n,i,r){n.type===t&&e.call(this,n,i,r)}}function o(e,n){var i=n.structure,r=[];for(var o in i)if(!1!==t.call(i,o)){var a=i[o],s={name:o,type:!1,nullable:!1};Array.isArray(i[o])||(a=[i[o]]);for(var l=0;l":".","?":"/","|":"\\"},d={option:"alt",command:"meta",return:"enter",escape:"esc",plus:"+",mod:/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"meta":"ctrl"},h=1;h<20;++h)l[111+h]="f"+h;for(h=0;h<=9;++h)l[h+96]=h.toString();_.prototype.bind=function(e,t,n){var i=this;return i._bindMultiple.call(i,e=e instanceof Array?e:[e],t,n),i},_.prototype.unbind=function(e,t){return this.bind.call(this,e,function(){},t)},_.prototype.trigger=function(e,t){var n=this;return n._directMap[e+":"+t]&&n._directMap[e+":"+t]({},e),n},_.prototype.reset=function(){var e=this;return e._callbacks={},e._directMap={},e},_.prototype.stopCallback=function(e,t){if((" "+t.className+" ").indexOf(" mousetrap ")>-1)return!1;if(y(t,this.target))return!1;if("composedPath"in e&&"function"==typeof e.composedPath){var n=e.composedPath()[0];n!==e.target&&(t=n)}return"INPUT"==t.tagName||"SELECT"==t.tagName||"TEXTAREA"==t.tagName||t.isContentEditable},_.prototype.handleKey=function(){var e=this;return e._handleKey.apply(e,arguments)},_.addKeycodes=function(e){for(var t in e)e.hasOwnProperty(t)&&(l[t]=e[t]);s=null},_.init=function(){var e=_(o);for(var t in e)"_"!==t.charAt(0)&&(_[t]=function(t){return function(){return e[t].apply(e,arguments)}}(t))},_.init(),r.Mousetrap=_,e.exports&&(e.exports=_),void 0===(i=(function(){return _}).call(t,n,t,e))||(e.exports=i)}function p(e,t,n){e.addEventListener?e.addEventListener(t,n,!1):e.attachEvent("on"+t,n)}function f(e){if("keypress"==e.type){var t=String.fromCharCode(e.which);return e.shiftKey||(t=t.toLowerCase()),t}return l[e.which]?l[e.which]:c[e.which]?c[e.which]:String.fromCharCode(e.which).toLowerCase()}function m(e){return"shift"==e||"ctrl"==e||"alt"==e||"meta"==e}function g(e,t,n){return n||(n=function(){if(!s)for(var e in s={},l)e>95&&e<112||l.hasOwnProperty(e)&&(s[l[e]]=e);return s}()[e]?"keydown":"keypress"),"keypress"==n&&t.length&&(n="keydown"),n}function v(e,t){var n,i,r,o=[];for(n=function(e){return"+"===e?["+"]:(e=e.replace(/\+{2}/g,"+plus")).split("+")}(e),r=0;r1?function(e,t,o,a){function c(t){return function(){s=t,++i[e],clearTimeout(n),n=setTimeout(l,1e3)}}function d(t){u(o,t,e),"keyup"!==a&&(r=f(t)),setTimeout(l,10)}i[e]=0;for(var p=0;p=0;--o){var a=this.tryEntries[o],s=a.completion;if("root"===a.tryLoc)return r("end");if(a.tryLoc<=this.prev){var l=i.call(a,"catchLoc"),c=i.call(a,"finallyLoc");if(l&&c){if(this.prev=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&i.call(r,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),A(n),m}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var i=n.completion;if("throw"===i.type){var r=i.arg;A(n)}return r}}throw new Error("illegal catch attempt")},delegateYield:function(e,n,i){return this.delegate={iterator:M(e),resultName:n,nextLoc:i},"next"===this.method&&(this.arg=t),m}},e}(e.exports);try{regeneratorRuntime=t}catch(n){Function("r","regeneratorRuntime = r")(t)}},56938:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);t.Observable=i.Observable,t.Subject=i.Subject;var r=n(37294);t.AnonymousSubject=r.AnonymousSubject;var o=n(37294);t.config=o.config,n(26598),n(87663),n(95351),n(66981),n(31881),n(36800),n(52413),n(86376),n(41029),n(30918),n(79817),n(29023),n(48668),n(61975),n(92442),n(42697),n(63990),n(86230),n(61201),n(32171),n(40439),n(69079),n(9222),n(52357),n(36294),n(12782),n(94618),n(93231),n(96547),n(62374),n(35595),n(57540),n(97010),n(56518),n(59982),n(70198),n(3943),n(95297),n(53842),n(46085),n(46753),n(12452),n(51341),n(41575),n(42657),n(17109),n(89716),n(71255),n(75197),n(70992),n(3106),n(54506),n(16161),n(11405),n(37132),n(45396),n(41154),n(96986),n(67259),n(89015),n(57301),n(4993),n(77490),n(4533),n(42215),n(95564),n(61431),n(68663),n(63566),n(62729),n(48483),n(32979),n(78104),n(64259),n(30336),n(46315),n(60771),n(92700),n(43545),n(89242),n(70177),n(43800),n(33434),n(37179),n(97810),n(27430),n(44633),n(37953),n(58435),n(14234),n(98741),n(43263),n(57180),n(87700),n(34860),n(67751),n(63733),n(38596),n(20038),n(58186),n(77538),n(33866),n(1676),n(3018),n(58003),n(77394),n(92947),n(27971),n(33934),n(43126),n(6320),n(96813),n(20425),n(70140),n(32035),n(49421),n(9693),n(87276),n(63934),n(17360),n(37222),n(55214),n(22854),n(65259),n(84715),n(27798),n(98441),n(56238),n(42145);var a=n(94117);t.Subscription=a.Subscription,t.ReplaySubject=a.ReplaySubject,t.BehaviorSubject=a.BehaviorSubject,t.Notification=a.Notification,t.EmptyError=a.EmptyError,t.ArgumentOutOfRangeError=a.ArgumentOutOfRangeError,t.ObjectUnsubscribedError=a.ObjectUnsubscribedError,t.UnsubscriptionError=a.UnsubscriptionError,t.pipe=a.pipe;var s=n(53520);t.TestScheduler=s.TestScheduler;var l=n(94117);t.Subscriber=l.Subscriber,t.AsyncSubject=l.AsyncSubject,t.ConnectableObservable=l.ConnectableObservable,t.TimeoutError=l.TimeoutError,t.VirtualTimeScheduler=l.VirtualTimeScheduler;var c=n(55905);t.AjaxResponse=c.AjaxResponse,t.AjaxError=c.AjaxError,t.AjaxTimeoutError=c.AjaxTimeoutError;var u=n(94117),d=n(37294),h=n(37294);t.TimeInterval=h.TimeInterval,t.Timestamp=h.Timestamp;var p=n(73033);t.operators=p,t.Scheduler={asap:u.asapScheduler,queue:u.queueScheduler,animationFrame:u.animationFrameScheduler,async:u.asyncScheduler},t.Symbol={rxSubscriber:d.rxSubscriber,observable:d.observable,iterator:d.iterator}},26598:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.bindCallback=i.bindCallback},87663:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.bindNodeCallback=i.bindNodeCallback},95351:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.combineLatest=i.combineLatest},66981:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.concat=i.concat},31881:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.defer=i.defer},12782:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(55905);i.Observable.ajax=r.ajax},94618:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(4194);i.Observable.webSocket=r.webSocket},36800:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.empty=i.empty},52413:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.forkJoin=i.forkJoin},86376:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.from=i.from},41029:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.fromEvent=i.fromEvent},30918:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.fromEventPattern=i.fromEventPattern},79817:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.fromPromise=i.from},29023:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.generate=i.generate},48668:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.if=i.iif},61975:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.interval=i.interval},92442:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.merge=i.merge},63990:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);function r(){return i.NEVER}t.staticNever=r,i.Observable.never=r},86230:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.of=i.of},61201:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.onErrorResumeNext=i.onErrorResumeNext},32171:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.pairs=i.pairs},42697:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.race=i.race},40439:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.range=i.range},9222:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.throw=i.throwError,i.Observable.throwError=i.throwError},52357:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.timer=i.timer},69079:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.using=i.using},36294:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117);i.Observable.zip=i.zip},77490:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(20325);i.Observable.prototype.audit=r.audit},4533:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(55702);i.Observable.prototype.auditTime=r.auditTime},93231:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(19931);i.Observable.prototype.buffer=r.buffer},96547:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(38173);i.Observable.prototype.bufferCount=r.bufferCount},62374:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(93690);i.Observable.prototype.bufferTime=r.bufferTime},35595:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(79681);i.Observable.prototype.bufferToggle=r.bufferToggle},57540:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(75311);i.Observable.prototype.bufferWhen=r.bufferWhen},97010:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(26306);i.Observable.prototype.catch=r._catch,i.Observable.prototype._catch=r._catch},56518:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(15869);i.Observable.prototype.combineAll=r.combineAll},59982:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(23265);i.Observable.prototype.combineLatest=r.combineLatest},70198:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(31179);i.Observable.prototype.concat=r.concat},3943:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(16148);i.Observable.prototype.concatAll=r.concatAll},95297:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(28552);i.Observable.prototype.concatMap=r.concatMap},53842:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(91798);i.Observable.prototype.concatMapTo=r.concatMapTo},46085:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(93653);i.Observable.prototype.count=r.count},12452:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(36477);i.Observable.prototype.debounce=r.debounce},51341:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(61529);i.Observable.prototype.debounceTime=r.debounceTime},41575:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(64502);i.Observable.prototype.defaultIfEmpty=r.defaultIfEmpty},42657:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(33674);i.Observable.prototype.delay=r.delay},17109:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(49477);i.Observable.prototype.delayWhen=r.delayWhen},46753:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(21941);i.Observable.prototype.dematerialize=r.dematerialize},89716:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(18053);i.Observable.prototype.distinct=r.distinct},71255:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(13598);i.Observable.prototype.distinctUntilChanged=r.distinctUntilChanged},75197:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(94936);i.Observable.prototype.distinctUntilKeyChanged=r.distinctUntilKeyChanged},70992:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(21790);i.Observable.prototype.do=r._do,i.Observable.prototype._do=r._do},11405:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(2538);i.Observable.prototype.elementAt=r.elementAt},61431:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(58136);i.Observable.prototype.every=r.every},3106:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(26734);i.Observable.prototype.exhaust=r.exhaust},54506:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(2084);i.Observable.prototype.exhaustMap=r.exhaustMap},16161:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(2945);i.Observable.prototype.expand=r.expand},37132:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(3704);i.Observable.prototype.filter=r.filter},45396:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(58870);i.Observable.prototype.finally=r._finally,i.Observable.prototype._finally=r._finally},41154:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(16201);i.Observable.prototype.find=r.find},96986:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(95148);i.Observable.prototype.findIndex=r.findIndex},67259:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(96050);i.Observable.prototype.first=r.first},89015:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(16309);i.Observable.prototype.groupBy=r.groupBy},57301:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(3640);i.Observable.prototype.ignoreElements=r.ignoreElements},4993:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(87486);i.Observable.prototype.isEmpty=r.isEmpty},42215:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(30274);i.Observable.prototype.last=r.last},95564:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(11668);i.Observable.prototype.let=r.letProto,i.Observable.prototype.letBind=r.letProto},68663:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(23307);i.Observable.prototype.map=r.map},63566:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(3498);i.Observable.prototype.mapTo=r.mapTo},62729:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(70845);i.Observable.prototype.materialize=r.materialize},48483:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(96415);i.Observable.prototype.max=r.max},32979:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(33836);i.Observable.prototype.merge=r.merge},78104:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(58610);i.Observable.prototype.mergeAll=r.mergeAll},64259:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(36098);i.Observable.prototype.mergeMap=r.mergeMap,i.Observable.prototype.flatMap=r.mergeMap},30336:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(53033);i.Observable.prototype.flatMapTo=r.mergeMapTo,i.Observable.prototype.mergeMapTo=r.mergeMapTo},46315:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(11444);i.Observable.prototype.mergeScan=r.mergeScan},60771:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(6626);i.Observable.prototype.min=r.min},92700:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(4291);i.Observable.prototype.multicast=r.multicast},43545:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(37675);i.Observable.prototype.observeOn=r.observeOn},89242:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(92878);i.Observable.prototype.onErrorResumeNext=r.onErrorResumeNext},70177:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(94401);i.Observable.prototype.pairwise=r.pairwise},43800:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(93110);i.Observable.prototype.partition=r.partition},33434:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(53937);i.Observable.prototype.pluck=r.pluck},37179:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(81e3);i.Observable.prototype.publish=r.publish},97810:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(78665);i.Observable.prototype.publishBehavior=r.publishBehavior},44633:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(34696);i.Observable.prototype.publishLast=r.publishLast},27430:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(35543);i.Observable.prototype.publishReplay=r.publishReplay},37953:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(33963);i.Observable.prototype.race=r.race},58435:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(99216);i.Observable.prototype.reduce=r.reduce},14234:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(19613);i.Observable.prototype.repeat=r.repeat},98741:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(72798);i.Observable.prototype.repeatWhen=r.repeatWhen},43263:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(59813);i.Observable.prototype.retry=r.retry},57180:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(5419);i.Observable.prototype.retryWhen=r.retryWhen},87700:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(58693);i.Observable.prototype.sample=r.sample},34860:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(86803);i.Observable.prototype.sampleTime=r.sampleTime},67751:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(65036);i.Observable.prototype.scan=r.scan},63733:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(12201);i.Observable.prototype.sequenceEqual=r.sequenceEqual},38596:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(86892);i.Observable.prototype.share=r.share},20038:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(9050);i.Observable.prototype.shareReplay=r.shareReplay},58186:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(13533);i.Observable.prototype.single=r.single},77538:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(65846);i.Observable.prototype.skip=r.skip},33866:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(90955);i.Observable.prototype.skipLast=r.skipLast},1676:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(75479);i.Observable.prototype.skipUntil=r.skipUntil},3018:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(76841);i.Observable.prototype.skipWhile=r.skipWhile},58003:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(66560);i.Observable.prototype.startWith=r.startWith},77394:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(92265);i.Observable.prototype.subscribeOn=r.subscribeOn},92947:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(41428);i.Observable.prototype.switch=r._switch,i.Observable.prototype._switch=r._switch},27971:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(5193);i.Observable.prototype.switchMap=r.switchMap},33934:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(34022);i.Observable.prototype.switchMapTo=r.switchMapTo},43126:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(204);i.Observable.prototype.take=r.take},6320:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(62299);i.Observable.prototype.takeLast=r.takeLast},96813:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(93542);i.Observable.prototype.takeUntil=r.takeUntil},20425:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(79214);i.Observable.prototype.takeWhile=r.takeWhile},70140:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(35922);i.Observable.prototype.throttle=r.throttle},32035:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(41941);i.Observable.prototype.throttleTime=r.throttleTime},49421:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(99194);i.Observable.prototype.timeInterval=r.timeInterval},9693:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(53358);i.Observable.prototype.timeout=r.timeout},87276:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(41237);i.Observable.prototype.timeoutWith=r.timeoutWith},63934:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(84485);i.Observable.prototype.timestamp=r.timestamp},17360:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(23552);i.Observable.prototype.toArray=r.toArray},37222:function(){},55214:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(13977);i.Observable.prototype.window=r.window},22854:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(54052);i.Observable.prototype.windowCount=r.windowCount},65259:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(17884);i.Observable.prototype.windowTime=r.windowTime},84715:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(18835);i.Observable.prototype.windowToggle=r.windowToggle},27798:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(84220);i.Observable.prototype.windowWhen=r.windowWhen},98441:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(41603);i.Observable.prototype.withLatestFrom=r.withLatestFrom},56238:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(83313);i.Observable.prototype.zip=r.zipProto},42145:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(80396);i.Observable.prototype.zipAll=r.zipAll},20325:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(73033);t.audit=function(e){return i.audit(e)(this)}},55702:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(73033);t.auditTime=function(e,t){return void 0===t&&(t=i.asyncScheduler),r.auditTime(e,t)(this)}},19931:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(73033);t.buffer=function(e){return i.buffer(e)(this)}},38173:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(73033);t.bufferCount=function(e,t){return void 0===t&&(t=null),i.bufferCount(e,t)(this)}},93690:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(37294),o=n(73033);t.bufferTime=function(e){var t=arguments.length,n=i.asyncScheduler;r.isScheduler(arguments[arguments.length-1])&&(n=arguments[arguments.length-1],t--);var a=null;t>=2&&(a=arguments[1]);var s=Number.POSITIVE_INFINITY;return t>=3&&(s=arguments[2]),o.bufferTime(e,a,s,n)(this)}},79681:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(73033);t.bufferToggle=function(e,t){return i.bufferToggle(e,t)(this)}},75311:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(73033);t.bufferWhen=function(e){return i.bufferWhen(e)(this)}},26306:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(73033);t._catch=function(e){return i.catchError(e)(this)}},15869:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(73033);t.combineAll=function(e){return i.combineAll(e)(this)}},23265:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(37294);t.combineLatest=function(){for(var e=[],t=0;t=2?i.reduce(e,t)(this):i.reduce(e)(this)}},19613:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(73033);t.repeat=function(e){return void 0===e&&(e=-1),i.repeat(e)(this)}},72798:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(73033);t.repeatWhen=function(e){return i.repeatWhen(e)(this)}},59813:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(73033);t.retry=function(e){return void 0===e&&(e=-1),i.retry(e)(this)}},5419:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(73033);t.retryWhen=function(e){return i.retryWhen(e)(this)}},58693:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(73033);t.sample=function(e){return i.sample(e)(this)}},86803:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(94117),r=n(73033);t.sampleTime=function(e,t){return void 0===t&&(t=i.asyncScheduler),r.sampleTime(e,t)(this)}},65036:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(73033);t.scan=function(e,t){return arguments.length>=2?i.scan(e,t)(this):i.scan(e)(this)}},12201:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(73033);t.sequenceEqual=function(e,t){return i.sequenceEqual(e,t)(this)}},86892:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(73033);t.share=function(){return i.share()(this)}},9050:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(73033);t.shareReplay=function(e,t,n){return e&&"object"==typeof e?i.shareReplay(e)(this):i.shareReplay(e,t,n)(this)}},13533:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(73033);t.single=function(e){return i.single(e)(this)}},65846:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(73033);t.skip=function(e){return i.skip(e)(this)}},90955:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(73033);t.skipLast=function(e){return i.skipLast(e)(this)}},75479:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(73033);t.skipUntil=function(e){return i.skipUntil(e)(this)}},76841:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(73033);t.skipWhile=function(e){return i.skipWhile(e)(this)}},66560:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(73033);t.startWith=function(){for(var e=[],t=0;t1&&void 0!==arguments[1]?arguments[1]:H.E,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:H.E;return(0,U.P)(function(){return e()?t:n})}var $=n(57434),ee=n(55371),te=new i.y(w.Z);function ne(){return te}var ie=n(43161);function re(){for(var e=arguments.length,t=new Array(e),n=0;n0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY,a=arguments.length>2?arguments[2]:void 0;return(0,i.Z)(this,n),(e=t.call(this)).scheduler=a,e._events=[],e._infiniteTimeWindow=!1,e._bufferSize=r<1?1:r,e._windowTime=o<1?1:o,o===Number.POSITIVE_INFINITY?(e._infiniteTimeWindow=!0,e.next=e.nextInfiniteTimeWindow):e.next=e.nextTimeWindow,e}return(0,r.Z)(n,[{key:"nextInfiniteTimeWindow",value:function(e){if(!this.isStopped){var t=this._events;t.push(e),t.length>this._bufferSize&&t.shift()}(0,o.Z)((0,a.Z)(n.prototype),"next",this).call(this,e)}},{key:"nextTimeWindow",value:function(e){this.isStopped||(this._events.push(new g(this._getNow(),e)),this._trimBufferThenGetEvents()),(0,o.Z)((0,a.Z)(n.prototype),"next",this).call(this,e)}},{key:"_subscribe",value:function(e){var t,n=this._infiniteTimeWindow,i=n?this._events:this._trimBufferThenGetEvents(),r=this.scheduler,o=i.length;if(this.closed)throw new p.N;if(this.isStopped||this.hasError?t=d.w.EMPTY:(this.observers.push(e),t=new f.W(this,e)),r&&e.add(e=new h.ht(e,r)),n)for(var a=0;at&&(o=Math.max(o,r-t)),o>0&&i.splice(0,o),i}}]),n}(c.xQ),g=function e(t,n){(0,i.Z)(this,e),this.time=t,this.value=n}},67801:function(e,t,n){"use strict";n.d(t,{b:function(){return o}});var i=n(61680),r=n(11254),o=function(){var e=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e.now;(0,i.Z)(this,e),this.SchedulerAction=t,this.now=n}return(0,r.Z)(e,[{key:"schedule",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2?arguments[2]:void 0;return new this.SchedulerAction(this,e).schedule(n,t)}}]),e}();return e.now=function(){return Date.now()},e}()},68707:function(e,t,n){"use strict";n.d(t,{Yc:function(){return m},xQ:function(){return g},ug:function(){return v}});var i=n(11254),r=n(51751),o=n(12558),a=n(61680),s=n(49843),l=n(37859),c=n(89797),u=n(39874),d=n(5051),h=n(1696),p=n(18480),f=n(79542),m=function(e){(0,s.Z)(n,e);var t=(0,l.Z)(n);function n(e){var i;return(0,a.Z)(this,n),(i=t.call(this,e)).destination=e,i}return n}(u.L),g=function(){var e=function(e){(0,s.Z)(n,e);var t=(0,l.Z)(n);function n(){var e;return(0,a.Z)(this,n),(e=t.call(this)).observers=[],e.closed=!1,e.isStopped=!1,e.hasError=!1,e.thrownError=null,e}return(0,i.Z)(n,[{key:f.b,value:function(){return new m(this)}},{key:"lift",value:function(e){var t=new v(this,this);return t.operator=e,t}},{key:"next",value:function(e){if(this.closed)throw new h.N;if(!this.isStopped)for(var t=this.observers,n=t.length,i=t.slice(),r=0;r1&&void 0!==arguments[1]?arguments[1]:0,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:l.e;return(0,i.Z)(this,n),(r=t.call(this)).source=e,r.delayTime=o,r.scheduler=a,(!(0,c.k)(o)||o<0)&&(r.delayTime=0),a&&"function"==typeof a.schedule||(r.scheduler=l.e),r}return(0,r.Z)(n,[{key:"_subscribe",value:function(e){return this.scheduler.schedule(n.dispatch,this.delayTime,{source:this.source,subscriber:e})}}],[{key:"create",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:l.e;return new n(e,t,i)}},{key:"dispatch",value:function(e){return this.add(e.source.subscribe(e.subscriber))}}]),n}(s.y)},81370:function(e,t,n){"use strict";n.d(t,{aj:function(){return p},Ms:function(){return f}});var i=n(49843),r=n(37859),o=n(61680),a=n(11254),s=n(91299),l=n(78985),c=n(7283),u=n(61454),d=n(80503),h={};function p(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:null;return new _({method:"GET",url:e,headers:t})}function p(e,t,n){return new _({method:"POST",url:e,body:t,headers:n})}function f(e,t){return new _({method:"DELETE",url:e,headers:t})}function m(e,t,n){return new _({method:"PUT",url:e,body:t,headers:n})}function g(e,t,n){return new _({method:"PATCH",url:e,body:t,headers:n})}var v=(0,n(85639).U)(function(e,t){return e.response});function y(e,t){return v(new _({method:"GET",url:e,responseType:"json",headers:t}))}var _=function(){var e=function(e){(0,s.Z)(n,e);var t=(0,l.Z)(n);function n(e){var i;(0,o.Z)(this,n),i=t.call(this);var r={async:!0,createXHR:function(){return this.crossDomain?function(){if(c.J.XMLHttpRequest)return new c.J.XMLHttpRequest;if(c.J.XDomainRequest)return new c.J.XDomainRequest;throw new Error("CORS is not supported by your browser")}():function(){if(c.J.XMLHttpRequest)return new c.J.XMLHttpRequest;var e;try{for(var t=["Msxml2.XMLHTTP","Microsoft.XMLHTTP","Msxml2.XMLHTTP.4.0"],n=0;n<3;n++)try{if(new c.J.ActiveXObject(e=t[n]))break}catch(i){}return new c.J.ActiveXObject(e)}catch(i){throw new Error("XMLHttpRequest is not supported by your browser")}}()},crossDomain:!0,withCredentials:!1,headers:{},method:"GET",responseType:"json",timeout:0};if("string"==typeof e)r.url=e;else for(var a in e)e.hasOwnProperty(a)&&(r[a]=e[a]);return i.request=r,i}return(0,a.Z)(n,[{key:"_subscribe",value:function(e){return new b(e,this.request)}}]),n}(u.y);return e.create=function(){var t=function(t){return new e(t)};return t.get=h,t.post=p,t.delete=f,t.put=m,t.patch=g,t.getJSON=y,t}(),e}(),b=function(e){(0,s.Z)(n,e);var t=(0,l.Z)(n);function n(e,i){var r;(0,o.Z)(this,n),(r=t.call(this,e)).request=i,r.done=!1;var a=i.headers=i.headers||{};return i.crossDomain||r.getHeader(a,"X-Requested-With")||(a["X-Requested-With"]="XMLHttpRequest"),r.getHeader(a,"Content-Type")||c.J.FormData&&i.body instanceof c.J.FormData||void 0===i.body||(a["Content-Type"]="application/x-www-form-urlencoded; charset=UTF-8"),i.body=r.serializeBody(i.body,r.getHeader(i.headers,"Content-Type")),r.send(),r}return(0,a.Z)(n,[{key:"next",value:function(e){this.done=!0;var t,n=this.xhr,i=this.request,r=this.destination;try{t=new w(e,n,i)}catch(o){return r.error(o)}r.next(t)}},{key:"send",value:function(){var e=this.request,t=this.request,n=t.user,i=t.method,r=t.url,o=t.async,a=t.password,s=t.headers,l=t.body;try{var c=this.xhr=e.createXHR();this.setupEvents(c,e),n?c.open(i,r,o,n,a):c.open(i,r,o),o&&(c.timeout=e.timeout,c.responseType=e.responseType),"withCredentials"in c&&(c.withCredentials=!!e.withCredentials),this.setHeaders(c,s),l?c.send(l):c.send()}catch(u){this.error(u)}}},{key:"serializeBody",value:function(e,t){if(!e||"string"==typeof e)return e;if(c.J.FormData&&e instanceof c.J.FormData)return e;if(t){var n=t.indexOf(";");-1!==n&&(t=t.substring(0,n))}switch(t){case"application/x-www-form-urlencoded":return Object.keys(e).map(function(t){return"".concat(encodeURIComponent(t),"=").concat(encodeURIComponent(e[t]))}).join("&");case"application/json":return JSON.stringify(e);default:return e}}},{key:"setHeaders",value:function(e,t){for(var n in t)t.hasOwnProperty(n)&&e.setRequestHeader(n,t[n])}},{key:"getHeader",value:function(e,t){for(var n in e)if(n.toLowerCase()===t.toLowerCase())return e[n]}},{key:"setupEvents",value:function(e,t){var n,i,r=t.progressSubscriber;function o(e){var t,n=o.subscriber,i=o.progressSubscriber,r=o.request;i&&i.error(e);try{t=new C(this,r)}catch(a){t=a}n.error(t)}function a(e){}function s(e){var t=s.subscriber,n=s.progressSubscriber,i=s.request;if(4===this.readyState){var r=1223===this.status?204:this.status;if(0===r&&(r=("text"===this.responseType?this.response||this.responseText:this.response)?200:0),r<400)n&&n.complete(),t.next(e),t.complete();else{var o;n&&n.error(e);try{o=new S("ajax error "+r,this,i)}catch(a){o=a}t.error(o)}}}e.ontimeout=o,o.request=t,o.subscriber=this,o.progressSubscriber=r,e.upload&&"withCredentials"in e&&(r&&(n=function(e){n.progressSubscriber.next(e)},c.J.XDomainRequest?e.onprogress=n:e.upload.onprogress=n,n.progressSubscriber=r),e.onerror=i=function(e){var t,n=i.progressSubscriber,r=i.subscriber,o=i.request;n&&n.error(e);try{t=new S("ajax error",this,o)}catch(a){t=a}r.error(t)},i.request=t,i.subscriber=this,i.progressSubscriber=r),e.onreadystatechange=a,a.subscriber=this,a.progressSubscriber=r,a.request=t,e.onload=s,s.subscriber=this,s.progressSubscriber=r,s.request=t}},{key:"unsubscribe",value:function(){var e=this.xhr;!this.done&&e&&4!==e.readyState&&"function"==typeof e.abort&&e.abort(),(0,i.Z)((0,r.Z)(n.prototype),"unsubscribe",this).call(this)}}]),n}(d.L),w=function e(t,n,i){(0,o.Z)(this,e),this.originalEvent=t,this.xhr=n,this.request=i,this.status=n.status,this.responseType=n.responseType||i.responseType,this.response=x(this.responseType,n)},S=function(){function e(e,t,n){return Error.call(this),this.message=e,this.name="AjaxError",this.xhr=t,this.request=n,this.status=t.status,this.responseType=t.responseType||n.responseType,this.response=x(this.responseType,t),this}return e.prototype=Object.create(Error.prototype),e}();function x(e,t){switch(e){case"json":return function(e){return"response"in e?e.responseType?e.response:JSON.parse(e.response||e.responseText||"null"):JSON.parse(e.responseText||"null")}(t);case"xml":return t.responseXML;case"text":default:return"response"in t?t.response:t.responseText}}var C=function(e,t){return S.call(this,"ajax timeout",e,t),this.name="AjaxTimeoutError",this}},46095:function(e,t,n){"use strict";n.d(t,{p:function(){return m}});var i=n(61680),r=n(11254),o=n(51751),a=n(12558),s=n(49843),l=n(37859),c=n(68707),u=n(39874),d=n(89797),h=n(5051),p=n(82667),f={url:"",deserializer:function(e){return JSON.parse(e.data)},serializer:function(e){return JSON.stringify(e)}},m=function(e){(0,s.Z)(n,e);var t=(0,l.Z)(n);function n(e,r){var o;if((0,i.Z)(this,n),o=t.call(this),e instanceof d.y)o.destination=r,o.source=e;else{var a=o._config=Object.assign({},f);if(o._output=new c.xQ,"string"==typeof e)a.url=e;else for(var s in e)e.hasOwnProperty(s)&&(a[s]=e[s]);if(!a.WebSocketCtor&&WebSocket)a.WebSocketCtor=WebSocket;else if(!a.WebSocketCtor)throw new Error("no WebSocket constructor can be found");o.destination=new p.t}return o}return(0,r.Z)(n,[{key:"lift",value:function(e){var t=new n(this._config,this.destination);return t.operator=e,t.source=this,t}},{key:"_resetState",value:function(){this._socket=null,this.source||(this.destination=new p.t),this._output=new c.xQ}},{key:"multiplex",value:function(e,t,n){var i=this;return new d.y(function(r){try{i.next(e())}catch(a){r.error(a)}var o=i.subscribe(function(e){try{n(e)&&r.next(e)}catch(a){r.error(a)}},function(e){return r.error(e)},function(){return r.complete()});return function(){try{i.next(t())}catch(a){r.error(a)}o.unsubscribe()}})}},{key:"_connectSocket",value:function(){var e=this,t=this._config,n=t.WebSocketCtor,i=t.protocol,r=t.url,o=t.binaryType,a=this._output,s=null;try{s=i?new n(r,i):new n(r),this._socket=s,o&&(this._socket.binaryType=o)}catch(c){return void a.error(c)}var l=new h.w(function(){e._socket=null,s&&1===s.readyState&&s.close()});s.onopen=function(t){if(!e._socket)return s.close(),void e._resetState();var n=e._config.openObserver;n&&n.next(t);var i=e.destination;e.destination=u.L.create(function(n){if(1===s.readyState)try{s.send((0,e._config.serializer)(n))}catch(t){e.destination.error(t)}},function(t){var n=e._config.closingObserver;n&&n.next(void 0),t&&t.code?s.close(t.code,t.reason):a.error(new TypeError("WebSocketSubject.error must be called with an object with an error code, and an optional reason: { code: number, reason: string }")),e._resetState()},function(){var t=e._config.closingObserver;t&&t.next(void 0),s.close(),e._resetState()}),i&&i instanceof p.t&&l.add(i.subscribe(e.destination))},s.onerror=function(t){e._resetState(),a.error(t)},s.onclose=function(t){e._resetState();var n=e._config.closeObserver;n&&n.next(t),t.wasClean?a.complete():a.error(t)},s.onmessage=function(t){try{a.next((0,e._config.deserializer)(t))}catch(n){a.error(n)}}}},{key:"_subscribe",value:function(e){var t=this,n=this.source;return n?n.subscribe(e):(this._socket||this._connectSocket(),this._output.subscribe(e),e.add(function(){var e=t._socket;0===t._output.observers.length&&(e&&1===e.readyState&&e.close(),t._resetState())}),e)}},{key:"unsubscribe",value:function(){var e=this._socket;e&&1===e.readyState&&e.close(),this._resetState(),(0,o.Z)((0,a.Z)(n.prototype),"unsubscribe",this).call(this)}}]),n}(c.ug)},30437:function(e,t,n){"use strict";n.d(t,{h:function(){return r}});var i=n(51361),r=function(){return i.i6.create}()},99298:function(e,t,n){"use strict";n.d(t,{j:function(){return r}});var i=n(46095);function r(e){return new i.p(e)}},93487:function(e,t,n){"use strict";n.d(t,{E:function(){return r},c:function(){return o}});var i=n(89797),r=new i.y(function(e){return e.complete()});function o(e){return e?function(e){return new i.y(function(t){return e.schedule(function(){return t.complete()})})}(e):r}},91925:function(e,t,n){"use strict";n.d(t,{D:function(){return c}});var i=n(25801),r=n(89797),o=n(78985),a=n(85639),s=n(64902),l=n(61493);function c(){for(var e=arguments.length,t=new Array(e),n=0;n1?Array.prototype.slice.call(arguments):e)},i,n)})}function c(e,t,n,i,r){var o;if(function(e){return e&&"function"==typeof e.addEventListener&&"function"==typeof e.removeEventListener}(e)){var a=e;e.addEventListener(t,n,r),o=function(){return a.removeEventListener(t,n,r)}}else if(function(e){return e&&"function"==typeof e.on&&"function"==typeof e.off}(e)){var s=e;e.on(t,n),o=function(){return s.off(t,n)}}else if(function(e){return e&&"function"==typeof e.addListener&&"function"==typeof e.removeListener}(e)){var l=e;e.addListener(t,n),o=function(){return l.removeListener(t,n)}}else{if(!e||!e.length)throw new TypeError("Invalid event target");for(var u=0,d=e.length;u0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:r.P;return(!(0,o.k)(e)||e<0)&&(e=0),t&&"function"==typeof t.schedule||(t=r.P),new i.y(function(n){return n.add(t.schedule(s,e,{subscriber:n,counter:0,period:e})),n})}function s(e){var t=e.subscriber,n=e.counter,i=e.period;t.next(n),this.schedule({subscriber:t,counter:n+1,period:i},i)}},55371:function(e,t,n){"use strict";n.d(t,{T:function(){return s}});var i=n(89797),r=n(91299),o=n(65890),a=n(80503);function s(){for(var e=Number.POSITIVE_INFINITY,t=null,n=arguments.length,s=new Array(n),l=0;l1&&"number"==typeof s[s.length-1]&&(e=s.pop())):"number"==typeof c&&(e=s.pop()),null===t&&1===s.length&&s[0]instanceof i.y?s[0]:(0,o.J)(e)((0,a.n)(s,t))}},43161:function(e,t,n){"use strict";n.d(t,{of:function(){return a}});var i=n(91299),r=n(80503),o=n(55835);function a(){for(var e=arguments.length,t=new Array(e),n=0;n0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0;return new i.y(function(i){void 0===t&&(t=e,e=0);var r=0,a=e;if(n)return n.schedule(o,0,{index:r,count:t,start:e,subscriber:i});for(;;){if(r++>=t){i.complete();break}if(i.next(a++),i.closed)break}})}function o(e){var t=e.start,n=e.index,i=e.subscriber;n>=e.count?i.complete():(i.next(t),i.closed||(e.index=n+1,e.start=t+1,this.schedule(e)))}},11363:function(e,t,n){"use strict";n.d(t,{_:function(){return r}});var i=n(89797);function r(e,t){return new i.y(t?function(n){return t.schedule(o,0,{error:e,subscriber:n})}:function(t){return t.error(e)})}function o(e){e.subscriber.error(e.error)}},5041:function(e,t,n){"use strict";n.d(t,{H:function(){return s}});var i=n(89797),r=n(46813),o=n(11705),a=n(91299);function s(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0,s=-1;return(0,o.k)(t)?s=Number(t)<1?1:Number(t):(0,a.K)(t)&&(n=t),(0,a.K)(n)||(n=r.P),new i.y(function(t){var i=(0,o.k)(e)?e:+e-n.now();return n.schedule(l,i,{index:0,period:s,subscriber:t})})}function l(e){var t=e.index,n=e.period,i=e.subscriber;if(i.next(t),!i.closed){if(-1===n)return i.complete();e.index=t+1,this.schedule(e,n)}}},43008:function(e,t,n){"use strict";n.d(t,{$R:function(){return h},mx:function(){return p}});var i=n(49843),r=n(37859),o=n(61680),a=n(11254),s=n(80503),l=n(78985),c=n(39874),u=n(81695),d=n(32124);function h(){for(var e=arguments.length,t=new Array(e),n=0;n2&&void 0!==arguments[2]||Object.create(null),(0,o.Z)(this,n),(r=t.call(this,e)).resultSelector=i,r.iterators=[],r.active=0,r.resultSelector="function"==typeof i?i:void 0,r}return(0,a.Z)(n,[{key:"_next",value:function(e){var t=this.iterators;(0,l.k)(e)?t.push(new g(e)):t.push("function"==typeof e[u.hZ]?new m(e[u.hZ]()):new v(this.destination,this,e))}},{key:"_complete",value:function(){var e=this.iterators,t=e.length;if(this.unsubscribe(),0!==t){this.active=t;for(var n=0;nthis.index}},{key:"hasCompleted",value:function(){return this.array.length===this.index}}]),e}(),v=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e,i,r){var a;return(0,o.Z)(this,n),(a=t.call(this,e)).parent=i,a.observable=r,a.stillUnsubscribed=!0,a.buffer=[],a.isComplete=!1,a}return(0,a.Z)(n,[{key:u.hZ,value:function(){return this}},{key:"next",value:function(){var e=this.buffer;return 0===e.length&&this.isComplete?{value:null,done:!0}:{value:e.shift(),done:!1}}},{key:"hasValue",value:function(){return this.buffer.length>0}},{key:"hasCompleted",value:function(){return 0===this.buffer.length&&this.isComplete}},{key:"notifyComplete",value:function(){this.buffer.length>0?(this.isComplete=!0,this.parent.notifyInactive()):this.destination.complete()}},{key:"notifyNext",value:function(e){this.buffer.push(e),this.parent.checkIterators()}},{key:"subscribe",value:function(){return(0,d.ft)(this.observable,new d.IY(this))}}]),n}(d.Ds)},67494:function(e,t,n){"use strict";n.d(t,{U:function(){return l}});var i=n(49843),r=n(37859),o=n(61680),a=n(11254),s=n(32124);function l(e){return function(t){return t.lift(new c(e))}}var c=function(){function e(t){(0,o.Z)(this,e),this.durationSelector=t}return(0,a.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new u(e,this.durationSelector))}}]),e}(),u=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e,i){var r;return(0,o.Z)(this,n),(r=t.call(this,e)).durationSelector=i,r.hasValue=!1,r}return(0,a.Z)(n,[{key:"_next",value:function(e){if(this.value=e,this.hasValue=!0,!this.throttled){var t;try{t=(0,this.durationSelector)(e)}catch(i){return this.destination.error(i)}var n=(0,s.ft)(t,new s.IY(this));!n||n.closed?this.clearThrottle():this.add(this.throttled=n)}}},{key:"clearThrottle",value:function(){var e=this.value,t=this.hasValue,n=this.throttled;n&&(this.remove(n),this.throttled=void 0,n.unsubscribe()),t&&(this.value=void 0,this.hasValue=!1,this.destination.next(e))}},{key:"notifyNext",value:function(){this.clearThrottle()}},{key:"notifyComplete",value:function(){this.clearThrottle()}}]),n}(s.Ds)},54562:function(e,t,n){"use strict";n.d(t,{e:function(){return a}});var i=n(46813),r=n(67494),o=n(5041);function a(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i.P;return(0,r.U)(function(){return(0,o.H)(e,t)})}},13426:function(e,t,n){"use strict";n.d(t,{K:function(){return u}});var i=n(51751),r=n(12558),o=n(49843),a=n(37859),s=n(61680),l=n(11254),c=n(32124);function u(e){return function(t){var n=new d(e),i=t.lift(n);return n.caught=i}}var d=function(){function e(t){(0,s.Z)(this,e),this.selector=t}return(0,l.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new h(e,this.selector,this.caught))}}]),e}(),h=function(e){(0,o.Z)(n,e);var t=(0,a.Z)(n);function n(e,i,r){var o;return(0,s.Z)(this,n),(o=t.call(this,e)).selector=i,o.caught=r,o}return(0,l.Z)(n,[{key:"error",value:function(e){if(!this.isStopped){var t;try{t=this.selector(e,this.caught)}catch(s){return void(0,i.Z)((0,r.Z)(n.prototype),"error",this).call(this,s)}this._unsubscribeAndRecycle();var o=new c.IY(this);this.add(o);var a=(0,c.ft)(t,o);a!==o&&this.add(a)}}}]),n}(c.Ds)},95416:function(e,t,n){"use strict";n.d(t,{u:function(){return r}});var i=n(65890);function r(){return(0,i.J)(1)}},38575:function(e,t,n){"use strict";n.d(t,{b:function(){return r}});var i=n(35135);function r(e,t){return(0,i.zg)(e,t,1)}},75398:function(e,t,n){"use strict";n.d(t,{Q:function(){return l}});var i=n(49843),r=n(37859),o=n(61680),a=n(11254),s=n(39874);function l(e){return function(t){return t.lift(new c(e,t))}}var c=function(){function e(t,n){(0,o.Z)(this,e),this.predicate=t,this.source=n}return(0,a.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new u(e,this.predicate,this.source))}}]),e}(),u=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e,i,r){var a;return(0,o.Z)(this,n),(a=t.call(this,e)).predicate=i,a.source=r,a.count=0,a.index=0,a}return(0,a.Z)(n,[{key:"_next",value:function(e){this.predicate?this._tryPredicate(e):this.count++}},{key:"_tryPredicate",value:function(e){var t;try{t=this.predicate(e,this.index++,this.source)}catch(n){return void this.destination.error(n)}t&&this.count++}},{key:"_complete",value:function(){this.destination.next(this.count),this.destination.complete()}}]),n}(s.L)},57263:function(e,t,n){"use strict";n.d(t,{b:function(){return c}});var i=n(49843),r=n(37859),o=n(61680),a=n(11254),s=n(39874),l=n(46813);function c(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:l.P;return function(n){return n.lift(new u(e,t))}}var u=function(){function e(t,n){(0,o.Z)(this,e),this.dueTime=t,this.scheduler=n}return(0,a.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new d(e,this.dueTime,this.scheduler))}}]),e}(),d=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e,i,r){var a;return(0,o.Z)(this,n),(a=t.call(this,e)).dueTime=i,a.scheduler=r,a.debouncedSubscription=null,a.lastValue=null,a.hasValue=!1,a}return(0,a.Z)(n,[{key:"_next",value:function(e){this.clearDebounce(),this.lastValue=e,this.hasValue=!0,this.add(this.debouncedSubscription=this.scheduler.schedule(h,this.dueTime,this))}},{key:"_complete",value:function(){this.debouncedNext(),this.destination.complete()}},{key:"debouncedNext",value:function(){if(this.clearDebounce(),this.hasValue){var e=this.lastValue;this.lastValue=null,this.hasValue=!1,this.destination.next(e)}}},{key:"clearDebounce",value:function(){var e=this.debouncedSubscription;null!==e&&(this.remove(e),e.unsubscribe(),this.debouncedSubscription=null)}}]),n}(s.L);function h(e){e.debouncedNext()}},34235:function(e,t,n){"use strict";n.d(t,{d:function(){return l}});var i=n(49843),r=n(37859),o=n(61680),a=n(11254),s=n(39874);function l(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return function(t){return t.lift(new c(e))}}var c=function(){function e(t){(0,o.Z)(this,e),this.defaultValue=t}return(0,a.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new u(e,this.defaultValue))}}]),e}(),u=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e,i){var r;return(0,o.Z)(this,n),(r=t.call(this,e)).defaultValue=i,r.isEmpty=!0,r}return(0,a.Z)(n,[{key:"_next",value:function(e){this.isEmpty=!1,this.destination.next(e)}},{key:"_complete",value:function(){this.isEmpty&&this.destination.next(this.defaultValue),this.destination.complete()}}]),n}(s.L)},86004:function(e,t,n){"use strict";n.d(t,{g:function(){return d}});var i=n(49843),r=n(37859),o=n(61680),a=n(11254),s=n(46813),l=n(88972),c=n(39874),u=n(80286);function d(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:s.P,n=(0,l.J)(e),i=n?+e-t.now():Math.abs(e);return function(e){return e.lift(new h(i,t))}}var h=function(){function e(t,n){(0,o.Z)(this,e),this.delay=t,this.scheduler=n}return(0,a.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new p(e,this.delay,this.scheduler))}}]),e}(),p=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e,i,r){var a;return(0,o.Z)(this,n),(a=t.call(this,e)).delay=i,a.scheduler=r,a.queue=[],a.active=!1,a.errored=!1,a}return(0,a.Z)(n,[{key:"_schedule",value:function(e){this.active=!0,this.destination.add(e.schedule(n.dispatch,this.delay,{source:this,destination:this.destination,scheduler:e}))}},{key:"scheduleNotification",value:function(e){if(!0!==this.errored){var t=this.scheduler,n=new f(t.now()+this.delay,e);this.queue.push(n),!1===this.active&&this._schedule(t)}}},{key:"_next",value:function(e){this.scheduleNotification(u.P.createNext(e))}},{key:"_error",value:function(e){this.errored=!0,this.queue=[],this.destination.error(e),this.unsubscribe()}},{key:"_complete",value:function(){this.scheduleNotification(u.P.createComplete()),this.unsubscribe()}}],[{key:"dispatch",value:function(e){for(var t=e.source,n=t.queue,i=e.scheduler,r=e.destination;n.length>0&&n[0].time-i.now()<=0;)n.shift().notification.observe(r);if(n.length>0){var o=Math.max(0,n[0].time-i.now());this.schedule(e,o)}else this.unsubscribe(),t.active=!1}}]),n}(c.L),f=function e(t,n){(0,o.Z)(this,e),this.time=t,this.notification=n}},76161:function(e,t,n){"use strict";n.d(t,{x:function(){return l}});var i=n(49843),r=n(37859),o=n(61680),a=n(11254),s=n(39874);function l(e,t){return function(n){return n.lift(new c(e,t))}}var c=function(){function e(t,n){(0,o.Z)(this,e),this.compare=t,this.keySelector=n}return(0,a.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new u(e,this.compare,this.keySelector))}}]),e}(),u=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e,i,r){var a;return(0,o.Z)(this,n),(a=t.call(this,e)).keySelector=r,a.hasKey=!1,"function"==typeof i&&(a.compare=i),a}return(0,a.Z)(n,[{key:"compare",value:function(e,t){return e===t}},{key:"_next",value:function(e){var t;try{var n=this.keySelector;t=n?n(e):e}catch(r){return this.destination.error(r)}var i=!1;if(this.hasKey)try{i=(0,this.compare)(this.key,t)}catch(r){return this.destination.error(r)}else this.hasKey=!0;i||(this.key=t,this.destination.next(e))}}]),n}(s.L)},58780:function(e,t,n){"use strict";n.d(t,{h:function(){return l}});var i=n(49843),r=n(37859),o=n(61680),a=n(11254),s=n(39874);function l(e,t){return function(n){return n.lift(new c(e,t))}}var c=function(){function e(t,n){(0,o.Z)(this,e),this.predicate=t,this.thisArg=n}return(0,a.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new u(e,this.predicate,this.thisArg))}}]),e}(),u=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e,i,r){var a;return(0,o.Z)(this,n),(a=t.call(this,e)).predicate=i,a.thisArg=r,a.count=0,a}return(0,a.Z)(n,[{key:"_next",value:function(e){var t;try{t=this.predicate.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}t&&this.destination.next(e)}}]),n}(s.L)},59803:function(e,t,n){"use strict";n.d(t,{x:function(){return c}});var i=n(49843),r=n(37859),o=n(61680),a=n(11254),s=n(39874),l=n(5051);function c(e){return function(t){return t.lift(new u(e))}}var u=function(){function e(t){(0,o.Z)(this,e),this.callback=t}return(0,a.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new d(e,this.callback))}}]),e}(),d=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e,i){var r;return(0,o.Z)(this,n),(r=t.call(this,e)).add(new l.w(i)),r}return n}(s.L)},64233:function(e,t,n){"use strict";n.d(t,{P:function(){return c}});var i=n(64646),r=n(58780),o=n(48359),a=n(34235),s=n(88942),l=n(57070);function c(e,t){var n=arguments.length>=2;return function(c){return c.pipe(e?(0,r.h)(function(t,n){return e(t,n,c)}):l.y,(0,o.q)(1),n?(0,a.d)(t):(0,s.T)(function(){return new i.K}))}}},86072:function(e,t,n){"use strict";n.d(t,{v:function(){return p},T:function(){return v}});var i=n(51751),r=n(12558),o=n(49843),a=n(37859),s=n(61680),l=n(11254),c=n(39874),u=n(5051),d=n(89797),h=n(68707);function p(e,t,n,i){return function(r){return r.lift(new f(e,t,n,i))}}var f=function(){function e(t,n,i,r){(0,s.Z)(this,e),this.keySelector=t,this.elementSelector=n,this.durationSelector=i,this.subjectSelector=r}return(0,l.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new m(e,this.keySelector,this.elementSelector,this.durationSelector,this.subjectSelector))}}]),e}(),m=function(e){(0,o.Z)(n,e);var t=(0,a.Z)(n);function n(e,i,r,o,a){var l;return(0,s.Z)(this,n),(l=t.call(this,e)).keySelector=i,l.elementSelector=r,l.durationSelector=o,l.subjectSelector=a,l.groups=null,l.attemptedToUnsubscribe=!1,l.count=0,l}return(0,l.Z)(n,[{key:"_next",value:function(e){var t;try{t=this.keySelector(e)}catch(n){return void this.error(n)}this._group(e,t)}},{key:"_group",value:function(e,t){var n=this.groups;n||(n=this.groups=new Map);var i,r=n.get(t);if(this.elementSelector)try{i=this.elementSelector(e)}catch(s){this.error(s)}else i=e;if(!r){r=this.subjectSelector?this.subjectSelector():new h.xQ,n.set(t,r);var o=new v(t,r,this);if(this.destination.next(o),this.durationSelector){var a;try{a=this.durationSelector(new v(t,r))}catch(s){return void this.error(s)}this.add(a.subscribe(new g(t,r,this)))}}r.closed||r.next(i)}},{key:"_error",value:function(e){var t=this.groups;t&&(t.forEach(function(t,n){t.error(e)}),t.clear()),this.destination.error(e)}},{key:"_complete",value:function(){var e=this.groups;e&&(e.forEach(function(e,t){e.complete()}),e.clear()),this.destination.complete()}},{key:"removeGroup",value:function(e){this.groups.delete(e)}},{key:"unsubscribe",value:function(){this.closed||(this.attemptedToUnsubscribe=!0,0===this.count&&(0,i.Z)((0,r.Z)(n.prototype),"unsubscribe",this).call(this))}}]),n}(c.L),g=function(e){(0,o.Z)(n,e);var t=(0,a.Z)(n);function n(e,i,r){var o;return(0,s.Z)(this,n),(o=t.call(this,i)).key=e,o.group=i,o.parent=r,o}return(0,l.Z)(n,[{key:"_next",value:function(e){this.complete()}},{key:"_unsubscribe",value:function(){var e=this.parent,t=this.key;this.key=this.parent=null,e&&e.removeGroup(t)}}]),n}(c.L),v=function(e){(0,o.Z)(n,e);var t=(0,a.Z)(n);function n(e,i,r){var o;return(0,s.Z)(this,n),(o=t.call(this)).key=e,o.groupSubject=i,o.refCountSubscription=r,o}return(0,l.Z)(n,[{key:"_subscribe",value:function(e){var t=new u.w,n=this.refCountSubscription,i=this.groupSubject;return n&&!n.closed&&t.add(new y(n)),t.add(i.subscribe(e)),t}}]),n}(d.y),y=function(e){(0,o.Z)(n,e);var t=(0,a.Z)(n);function n(e){var i;return(0,s.Z)(this,n),(i=t.call(this)).parent=e,e.count++,i}return(0,l.Z)(n,[{key:"unsubscribe",value:function(){var e=this.parent;e.closed||this.closed||((0,i.Z)((0,r.Z)(n.prototype),"unsubscribe",this).call(this),e.count-=1,0===e.count&&e.attemptedToUnsubscribe&&e.unsubscribe())}}]),n}(u.w)},99583:function(e,t,n){"use strict";n.d(t,{Z:function(){return c}});var i=n(64646),r=n(58780),o=n(64397),a=n(88942),s=n(34235),l=n(57070);function c(e,t){var n=arguments.length>=2;return function(c){return c.pipe(e?(0,r.h)(function(t,n){return e(t,n,c)}):l.y,(0,o.h)(1),n?(0,s.d)(t):(0,a.T)(function(){return new i.K}))}}},85639:function(e,t,n){"use strict";n.d(t,{U:function(){return c}});var i=n(3574),r=n(49843),o=n(37859),a=n(61680),s=n(11254),l=n(39874);function c(e,t){return function(n){if("function"!=typeof e)throw new TypeError("argument is not a function. Are you looking for `mapTo()`?");return n.lift(new u(e,t))}}var u=function(){function e(t,n){(0,a.Z)(this,e),this.project=t,this.thisArg=n}return(0,s.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new d(e,this.project,this.thisArg))}}]),e}(),d=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(e,r,o){var s;return(0,a.Z)(this,n),(s=t.call(this,e)).project=r,s.count=0,s.thisArg=o||(0,i.Z)(s),s}return(0,s.Z)(n,[{key:"_next",value:function(e){var t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}]),n}(l.L)},12698:function(e,t,n){"use strict";n.d(t,{h:function(){return l}});var i=n(49843),r=n(37859),o=n(61680),a=n(11254),s=n(39874);function l(e){return function(t){return t.lift(new c(e))}}var c=function(){function e(t){(0,o.Z)(this,e),this.value=t}return(0,a.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new u(e,this.value))}}]),e}(),u=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e,i){var r;return(0,o.Z)(this,n),(r=t.call(this,e)).value=i,r}return(0,a.Z)(n,[{key:"_next",value:function(e){this.destination.next(this.value)}}]),n}(s.L)},65890:function(e,t,n){"use strict";n.d(t,{J:function(){return o}});var i=n(35135),r=n(57070);function o(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return(0,i.zg)(r.y,e)}},35135:function(e,t,n){"use strict";n.d(t,{zg:function(){return u},VS:function(){return p}});var i=n(49843),r=n(37859),o=n(61680),a=n(11254),s=n(85639),l=n(61493),c=n(32124);function u(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof t?function(i){return i.pipe(u(function(n,i){return(0,l.D)(e(n,i)).pipe((0,s.U)(function(e,r){return t(n,e,i,r)}))},n))}:("number"==typeof t&&(n=t),function(t){return t.lift(new d(e,n))})}var d=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;(0,o.Z)(this,e),this.project=t,this.concurrent=n}return(0,a.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new h(e,this.project,this.concurrent))}}]),e}(),h=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e,i){var r,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return(0,o.Z)(this,n),(r=t.call(this,e)).project=i,r.concurrent=a,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return(0,a.Z)(n,[{key:"_next",value:function(e){this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),n}(c.Ds),p=u},4981:function(e,t,n){"use strict";n.d(t,{O:function(){return a}});var i=n(61680),r=n(11254),o=n(39887);function a(e,t){return function(n){var i;if(i="function"==typeof e?e:function(){return e},"function"==typeof t)return n.lift(new s(i,t));var r=Object.create(n,o.N);return r.source=n,r.subjectFactory=i,r}}var s=function(){function e(t,n){(0,i.Z)(this,e),this.subjectFactory=t,this.selector=n}return(0,r.Z)(e,[{key:"call",value:function(e,t){var n=this.selector,i=this.subjectFactory(),r=n(i).subscribe(e);return r.add(t.subscribe(i)),r}}]),e}()},25110:function(e,t,n){"use strict";n.d(t,{QV:function(){return c},ht:function(){return d}});var i=n(49843),r=n(37859),o=n(61680),a=n(11254),s=n(39874),l=n(80286);function c(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return function(n){return n.lift(new u(e,t))}}var u=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;(0,o.Z)(this,e),this.scheduler=t,this.delay=n}return(0,a.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new d(e,this.scheduler,this.delay))}}]),e}(),d=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e,i){var r,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return(0,o.Z)(this,n),(r=t.call(this,e)).scheduler=i,r.delay=a,r}return(0,a.Z)(n,[{key:"scheduleMessage",value:function(e){this.destination.add(this.scheduler.schedule(n.dispatch,this.delay,new h(e,this.destination)))}},{key:"_next",value:function(e){this.scheduleMessage(l.P.createNext(e))}},{key:"_error",value:function(e){this.scheduleMessage(l.P.createError(e)),this.unsubscribe()}},{key:"_complete",value:function(){this.scheduleMessage(l.P.createComplete()),this.unsubscribe()}}],[{key:"dispatch",value:function(e){e.notification.observe(e.destination),this.unsubscribe()}}]),n}(s.L),h=function e(t,n){(0,o.Z)(this,e),this.notification=t,this.destination=n}},4363:function(e,t,n){"use strict";n.d(t,{G:function(){return l}});var i=n(49843),r=n(37859),o=n(61680),a=n(11254),s=n(39874);function l(){return function(e){return e.lift(new c)}}var c=function(){function e(){(0,o.Z)(this,e)}return(0,a.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new u(e))}}]),e}(),u=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e){var i;return(0,o.Z)(this,n),(i=t.call(this,e)).hasPrev=!1,i}return(0,a.Z)(n,[{key:"_next",value:function(e){var t;this.hasPrev?t=[this.prev,e]:this.hasPrev=!0,this.prev=e,t&&this.destination.next(t)}}]),n}(s.L)},26575:function(e,t,n){"use strict";n.d(t,{x:function(){return l}});var i=n(49843),r=n(37859),o=n(61680),a=n(11254),s=n(39874);function l(){return function(e){return e.lift(new c(e))}}var c=function(){function e(t){(0,o.Z)(this,e),this.connectable=t}return(0,a.Z)(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var i=new u(e,n),r=t.subscribe(i);return i.closed||(i.connection=n.connect()),r}}]),e}(),u=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e,i){var r;return(0,o.Z)(this,n),(r=t.call(this,e)).connectable=i,r}return(0,a.Z)(n,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,i=e._connection;this.connection=null,!i||n&&i!==n||i.unsubscribe()}}else this.connection=null}}]),n}(s.L)},31927:function(e,t,n){"use strict";n.d(t,{R:function(){return l}});var i=n(49843),r=n(37859),o=n(61680),a=n(11254),s=n(39874);function l(e,t){var n=!1;return arguments.length>=2&&(n=!0),function(i){return i.lift(new c(e,t,n))}}var c=function(){function e(t,n){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];(0,o.Z)(this,e),this.accumulator=t,this.seed=n,this.hasSeed=i}return(0,a.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new u(e,this.accumulator,this.seed,this.hasSeed))}}]),e}(),u=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e,i,r,a){var s;return(0,o.Z)(this,n),(s=t.call(this,e)).accumulator=i,s._seed=r,s.hasSeed=a,s.index=0,s}return(0,a.Z)(n,[{key:"seed",get:function(){return this._seed},set:function(e){this.hasSeed=!0,this._seed=e}},{key:"_next",value:function(e){if(this.hasSeed)return this._tryNext(e);this.seed=e,this.destination.next(e)}},{key:"_tryNext",value:function(e){var t,n=this.index++;try{t=this.accumulator(this.seed,e,n)}catch(i){this.destination.error(i)}this.seed=t,this.destination.next(t)}}]),n}(s.L)},16338:function(e,t,n){"use strict";n.d(t,{B:function(){return s}});var i=n(4981),r=n(26575),o=n(68707);function a(){return new o.xQ}function s(){return function(e){return(0,r.x)()((0,i.O)(a)(e))}}},61106:function(e,t,n){"use strict";n.d(t,{d:function(){return r}});var i=n(82667);function r(e,t,n){var r;return r=e&&"object"==typeof e?e:{bufferSize:e,windowTime:t,refCount:!1,scheduler:n},function(e){return e.lift(function(e){var t,n,r=e.bufferSize,o=void 0===r?Number.POSITIVE_INFINITY:r,a=e.windowTime,s=void 0===a?Number.POSITIVE_INFINITY:a,l=e.refCount,c=e.scheduler,u=0,d=!1,h=!1;return function(e){var r;u++,!t||d?(d=!1,t=new i.t(o,s,c),r=t.subscribe(this),n=e.subscribe({next:function(e){t.next(e)},error:function(e){d=!0,t.error(e)},complete:function(){h=!0,n=void 0,t.complete()}}),h&&(n=void 0)):r=t.subscribe(this),this.add(function(){u--,r.unsubscribe(),r=void 0,n&&!h&&l&&0===u&&(n.unsubscribe(),n=void 0,t=void 0)})}}(r))}}},18756:function(e,t,n){"use strict";n.d(t,{T:function(){return l}});var i=n(49843),r=n(37859),o=n(61680),a=n(11254),s=n(39874);function l(e){return function(t){return t.lift(new c(e))}}var c=function(){function e(t){(0,o.Z)(this,e),this.total=t}return(0,a.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new u(e,this.total))}}]),e}(),u=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e,i){var r;return(0,o.Z)(this,n),(r=t.call(this,e)).total=i,r.count=0,r}return(0,a.Z)(n,[{key:"_next",value:function(e){++this.count>this.total&&this.destination.next(e)}}]),n}(s.L)},57682:function(e,t,n){"use strict";n.d(t,{O:function(){return o}});var i=n(60131),r=n(91299);function o(){for(var e=arguments.length,t=new Array(e),n=0;n0)for(var n=this.count>=this.total?this.total:this.count,i=this.ring,r=0;r1&&void 0!==arguments[1]&&arguments[1];return function(n){return n.lift(new c(e,t))}}var c=function(){function e(t,n){(0,o.Z)(this,e),this.predicate=t,this.inclusive=n}return(0,a.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new u(e,this.predicate,this.inclusive))}}]),e}(),u=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e,i,r){var a;return(0,o.Z)(this,n),(a=t.call(this,e)).predicate=i,a.inclusive=r,a.index=0,a}return(0,a.Z)(n,[{key:"_next",value:function(e){var t,n=this.destination;try{t=this.predicate(e,this.index++)}catch(i){return void n.error(i)}this.nextOrComplete(e,t)}},{key:"nextOrComplete",value:function(e,t){var n=this.destination;Boolean(t)?n.next(e):(this.inclusive&&n.next(e),n.complete())}}]),n}(s.L)},59371:function(e,t,n){"use strict";n.d(t,{b:function(){return d}});var i=n(3574),r=n(49843),o=n(37859),a=n(61680),s=n(11254),l=n(39874),c=n(66029),u=n(20684);function d(e,t,n){return function(i){return i.lift(new h(e,t,n))}}var h=function(){function e(t,n,i){(0,a.Z)(this,e),this.nextOrObserver=t,this.error=n,this.complete=i}return(0,s.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new p(e,this.nextOrObserver,this.error,this.complete))}}]),e}(),p=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(e,r,o,s){var l;return(0,a.Z)(this,n),(l=t.call(this,e))._tapNext=c.Z,l._tapError=c.Z,l._tapComplete=c.Z,l._tapError=o||c.Z,l._tapComplete=s||c.Z,(0,u.m)(r)?(l._context=(0,i.Z)(l),l._tapNext=r):r&&(l._context=r,l._tapNext=r.next||c.Z,l._tapError=r.error||c.Z,l._tapComplete=r.complete||c.Z),l}return(0,s.Z)(n,[{key:"_next",value:function(e){try{this._tapNext.call(this._context,e)}catch(t){return void this.destination.error(t)}this.destination.next(e)}},{key:"_error",value:function(e){try{this._tapError.call(this._context,e)}catch(e){return void this.destination.error(e)}this.destination.error(e)}},{key:"_complete",value:function(){try{this._tapComplete.call(this._context)}catch(e){return void this.destination.error(e)}return this.destination.complete()}}]),n}(l.L)},243:function(e,t,n){"use strict";n.d(t,{d:function(){return l},P:function(){return c}});var i=n(49843),r=n(37859),o=n(61680),a=n(11254),s=n(32124),l={leading:!0,trailing:!1};function c(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:l;return function(n){return n.lift(new u(e,!!t.leading,!!t.trailing))}}var u=function(){function e(t,n,i){(0,o.Z)(this,e),this.durationSelector=t,this.leading=n,this.trailing=i}return(0,a.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new d(e,this.durationSelector,this.leading,this.trailing))}}]),e}(),d=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e,i,r,a){var s;return(0,o.Z)(this,n),(s=t.call(this,e)).destination=e,s.durationSelector=i,s._leading=r,s._trailing=a,s._hasValue=!1,s}return(0,a.Z)(n,[{key:"_next",value:function(e){this._hasValue=!0,this._sendValue=e,this._throttled||(this._leading?this.send():this.throttle(e))}},{key:"send",value:function(){var e=this._sendValue;this._hasValue&&(this.destination.next(e),this.throttle(e)),this._hasValue=!1,this._sendValue=void 0}},{key:"throttle",value:function(e){var t=this.tryDurationSelector(e);t&&this.add(this._throttled=(0,s.ft)(t,new s.IY(this)))}},{key:"tryDurationSelector",value:function(e){try{return this.durationSelector(e)}catch(t){return this.destination.error(t),null}}},{key:"throttlingDone",value:function(){var e=this._throttled,t=this._trailing;e&&e.unsubscribe(),this._throttled=void 0,t&&this.send()}},{key:"notifyNext",value:function(){this.throttlingDone()}},{key:"notifyComplete",value:function(){this.throttlingDone()}}]),n}(s.Ds)},88942:function(e,t,n){"use strict";n.d(t,{T:function(){return c}});var i=n(49843),r=n(37859),o=n(61680),a=n(11254),s=n(64646),l=n(39874);function c(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:h;return function(t){return t.lift(new u(e))}}var u=function(){function e(t){(0,o.Z)(this,e),this.errorFactory=t}return(0,a.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new d(e,this.errorFactory))}}]),e}(),d=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e,i){var r;return(0,o.Z)(this,n),(r=t.call(this,e)).errorFactory=i,r.hasValue=!1,r}return(0,a.Z)(n,[{key:"_next",value:function(e){this.hasValue=!0,this.destination.next(e)}},{key:"_complete",value:function(){if(this.hasValue)return this.destination.complete();var e;try{e=this.errorFactory()}catch(t){e=t}this.destination.error(e)}}]),n}(l.L);function h(){return new s.K}},73445:function(e,t,n){"use strict";n.d(t,{J:function(){return l},R:function(){return c}});var i=n(61680),r=n(46813),o=n(31927),a=n(4499),s=n(85639);function l(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:r.P;return function(t){return(0,a.P)(function(){return t.pipe((0,o.R)(function(t,n){var i=t.current;return{value:n,current:e.now(),last:i}},{current:e.now(),value:void 0,last:void 0}),(0,s.U)(function(e){return new c(e.value,e.current-e.last)}))})}}var c=function e(t,n){(0,i.Z)(this,e),this.value=t,this.interval=n}},63706:function(e,t,n){"use strict";n.d(t,{A:function(){return a},E:function(){return s}});var i=n(61680),r=n(46813),o=n(85639);function a(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:r.P;return(0,o.U)(function(t){return new s(t,e.now())})}var s=function e(t,n){(0,i.Z)(this,e),this.value=t,this.timestamp=n}},55835:function(e,t,n){"use strict";n.d(t,{r:function(){return o}});var i=n(89797),r=n(5051);function o(e,t){return new i.y(function(n){var i=new r.w,o=0;return i.add(t.schedule(function(){o!==e.length?(n.next(e[o++]),n.closed||i.add(this.schedule())):n.complete()})),i})}},60612:function(e,t,n){"use strict";n.d(t,{Q:function(){return a}});var i=n(89797),r=n(5051),o=n(81695);function a(e,t){if(!e)throw new Error("Iterable cannot be null");return new i.y(function(n){var i,a=new r.w;return a.add(function(){i&&"function"==typeof i.return&&i.return()}),a.add(t.schedule(function(){i=e[o.hZ](),a.add(t.schedule(function(){if(!n.closed){var e,t;try{var r=i.next();e=r.value,t=r.done}catch(o){return void n.error(o)}t?n.complete():(n.next(e),this.schedule())}}))})),a})}},10498:function(e,t,n){"use strict";n.d(t,{c:function(){return o}});var i=n(89797),r=n(5051);function o(e,t){return new i.y(function(n){var i=new r.w;return i.add(t.schedule(function(){return e.then(function(e){i.add(t.schedule(function(){n.next(e),i.add(t.schedule(function(){return n.complete()}))}))},function(e){i.add(t.schedule(function(){return n.error(e)}))})})),i})}},77493:function(e,t,n){"use strict";n.d(t,{x:function(){return p}});var i=n(89797),r=n(5051),o=n(57694),a=n(10498),s=n(55835),l=n(60612),c=n(19104),u=n(36514),d=n(30621),h=n(2762);function p(e,t){if(null!=e){if((0,c.c)(e))return function(e,t){return new i.y(function(n){var i=new r.w;return i.add(t.schedule(function(){var r=e[o.L]();i.add(r.subscribe({next:function(e){i.add(t.schedule(function(){return n.next(e)}))},error:function(e){i.add(t.schedule(function(){return n.error(e)}))},complete:function(){i.add(t.schedule(function(){return n.complete()}))}}))})),i})}(e,t);if((0,u.t)(e))return(0,a.c)(e,t);if((0,d.z)(e))return(0,s.r)(e,t);if((0,h.T)(e)||"string"==typeof e)return(0,l.Q)(e,t)}throw new TypeError((null!==e&&typeof e||e)+" is not observable")}},4065:function(e,t,n){"use strict";n.d(t,{o:function(){return s}});var i=n(61680),r=n(11254),o=n(49843),a=n(37859),s=function(e){(0,o.Z)(n,e);var t=(0,a.Z)(n);function n(e,r){var o;return(0,i.Z)(this,n),(o=t.call(this,e,r)).scheduler=e,o.work=r,o.pending=!1,o}return(0,r.Z)(n,[{key:"schedule",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(this.closed)return this;this.state=e;var n=this.id,i=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(i,n,t)),this.pending=!0,this.delay=t,this.id=this.id||this.requestAsyncId(i,this.id,t),this}},{key:"requestAsyncId",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return setInterval(e.flush.bind(e,this),n)}},{key:"recycleAsyncId",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(null!==n&&this.delay===n&&!1===this.pending)return t;clearInterval(t)}},{key:"execute",value:function(e,t){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var n=this._execute(e,t);if(n)return n;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}},{key:"_execute",value:function(e,t){var n=!1,i=void 0;try{this.work(e)}catch(r){n=!0,i=!!r&&r||new Error(r)}if(n)return this.unsubscribe(),i}},{key:"_unsubscribe",value:function(){var e=this.id,t=this.scheduler,n=t.actions,i=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==i&&n.splice(i,1),null!=e&&(this.id=this.recycleAsyncId(t,e,null)),this.delay=null}}]),n}(function(e){(0,o.Z)(n,e);var t=(0,a.Z)(n);function n(e,r){return(0,i.Z)(this,n),t.call(this)}return(0,r.Z)(n,[{key:"schedule",value:function(e){return this}}]),n}(n(5051).w))},81572:function(e,t,n){"use strict";n.d(t,{v:function(){return d}});var i=n(61680),r=n(11254),o=n(3574),a=n(51751),s=n(12558),l=n(49843),c=n(37859),u=n(67801),d=function(e){(0,l.Z)(n,e);var t=(0,c.Z)(n);function n(e){var r,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:u.b.now;return(0,i.Z)(this,n),(r=t.call(this,e,function(){return n.delegate&&n.delegate!==(0,o.Z)(r)?n.delegate.now():a()})).actions=[],r.active=!1,r.scheduled=void 0,r}return(0,r.Z)(n,[{key:"schedule",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2?arguments[2]:void 0;return n.delegate&&n.delegate!==this?n.delegate.schedule(e,t,i):(0,a.Z)((0,s.Z)(n.prototype),"schedule",this).call(this,e,t,i)}},{key:"flush",value:function(e){var t=this.actions;if(this.active)t.push(e);else{var n;this.active=!0;do{if(n=e.execute(e.state,e.delay))break}while(e=t.shift());if(this.active=!1,n){for(;e=t.shift();)e.unsubscribe();throw n}}}}]),n}(u.b)},2296:function(e,t,n){"use strict";n.d(t,{y:function(){return d},h:function(){return h}});var i=n(51751),r=n(12558),o=n(61680),a=n(11254),s=n(49843),l=n(37859),c=n(4065),u=n(81572),d=function(){var e=function(e){(0,s.Z)(n,e);var t=(0,l.Z)(n);function n(){var e,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:h,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;return(0,o.Z)(this,n),(e=t.call(this,i,function(){return e.frame})).maxFrames=r,e.frame=0,e.index=-1,e}return(0,a.Z)(n,[{key:"flush",value:function(){for(var e,t,n=this.actions,i=this.maxFrames;(t=n[0])&&t.delay<=i&&(n.shift(),this.frame=t.delay,!(e=t.execute(t.state,t.delay))););if(e){for(;t=n.shift();)t.unsubscribe();throw e}}}]),n}(u.v);return e.frameTimeFactor=10,e}(),h=function(e){(0,s.Z)(n,e);var t=(0,l.Z)(n);function n(e,i){var r,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.index+=1;return(0,o.Z)(this,n),(r=t.call(this,e,i)).scheduler=e,r.work=i,r.index=a,r.active=!0,r.index=e.index=a,r}return(0,a.Z)(n,[{key:"schedule",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(!this.id)return(0,i.Z)((0,r.Z)(n.prototype),"schedule",this).call(this,e,t);this.active=!1;var o=new n(this.scheduler,this.work);return this.add(o),o.schedule(e,t)}},{key:"requestAsyncId",value:function(e,t){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;this.delay=e.frame+i;var r=e.actions;return r.push(this),r.sort(n.sortActions),!0}},{key:"recycleAsyncId",value:function(e,t){}},{key:"_execute",value:function(e,t){if(!0===this.active)return(0,i.Z)((0,r.Z)(n.prototype),"_execute",this).call(this,e,t)}}],[{key:"sortActions",value:function(e,t){return e.delay===t.delay?e.index===t.index?0:e.index>t.index?1:-1:e.delay>t.delay?1:-1}}]),n}(c.o)},58172:function(e,t,n){"use strict";n.d(t,{r:function(){return d},Z:function(){return u}});var i=n(61680),r=n(11254),o=n(51751),a=n(12558),s=n(49843),l=n(37859),c=function(e){(0,s.Z)(n,e);var t=(0,l.Z)(n);function n(e,r){var o;return(0,i.Z)(this,n),(o=t.call(this,e,r)).scheduler=e,o.work=r,o}return(0,r.Z)(n,[{key:"requestAsyncId",value:function(e,t){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return null!==i&&i>0?(0,o.Z)((0,a.Z)(n.prototype),"requestAsyncId",this).call(this,e,t,i):(e.actions.push(this),e.scheduled||(e.scheduled=requestAnimationFrame(function(){return e.flush(null)})))}},{key:"recycleAsyncId",value:function(e,t){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(null!==i&&i>0||null===i&&this.delay>0)return(0,o.Z)((0,a.Z)(n.prototype),"recycleAsyncId",this).call(this,e,t,i);0===e.actions.length&&(cancelAnimationFrame(t),e.scheduled=void 0)}}]),n}(n(4065).o),u=new(function(e){(0,s.Z)(n,e);var t=(0,l.Z)(n);function n(){return(0,i.Z)(this,n),t.apply(this,arguments)}return(0,r.Z)(n,[{key:"flush",value:function(e){this.active=!0,this.scheduled=void 0;var t,n=this.actions,i=-1,r=n.length;e=e||n.shift();do{if(t=e.execute(e.state,e.delay))break}while(++i2&&void 0!==arguments[2]?arguments[2]:0;return null!==i&&i>0?(0,o.Z)((0,a.Z)(n.prototype),"requestAsyncId",this).call(this,e,t,i):(e.actions.push(this),e.scheduled||(e.scheduled=c.H.setImmediate(e.flush.bind(e,null))))}},{key:"recycleAsyncId",value:function(e,t){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(null!==i&&i>0||null===i&&this.delay>0)return(0,o.Z)((0,a.Z)(n.prototype),"recycleAsyncId",this).call(this,e,t,i);0===e.actions.length&&(c.H.clearImmediate(t),e.scheduled=void 0)}}]),n}(n(4065).o),d=new(function(e){(0,s.Z)(n,e);var t=(0,l.Z)(n);function n(){return(0,i.Z)(this,n),t.apply(this,arguments)}return(0,r.Z)(n,[{key:"flush",value:function(e){this.active=!0,this.scheduled=void 0;var t,n=this.actions,i=-1,r=n.length;e=e||n.shift();do{if(t=e.execute(e.state,e.delay))break}while(++i1&&void 0!==arguments[1]?arguments[1]:0;return t>0?(0,o.Z)((0,a.Z)(n.prototype),"schedule",this).call(this,e,t):(this.delay=t,this.state=e,this.scheduler.flush(this),this)}},{key:"execute",value:function(e,t){return t>0||this.closed?(0,o.Z)((0,a.Z)(n.prototype),"execute",this).call(this,e,t):this._execute(e,t)}},{key:"requestAsyncId",value:function(e,t){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return null!==i&&i>0||null===i&&this.delay>0?(0,o.Z)((0,a.Z)(n.prototype),"requestAsyncId",this).call(this,e,t,i):e.flush(this)}}]),n}(n(4065).o),u=new(function(e){(0,s.Z)(n,e);var t=(0,l.Z)(n);function n(){return(0,i.Z)(this,n),t.apply(this,arguments)}return n}(n(81572).v))(c),d=u},81695:function(e,t,n){"use strict";function i(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}n.d(t,{hZ:function(){return r}});var r=i()},57694:function(e,t,n){"use strict";n.d(t,{L:function(){return i}});var i=function(){return"function"==typeof Symbol&&Symbol.observable||"@@observable"}()},79542:function(e,t,n){"use strict";n.d(t,{b:function(){return i}});var i=function(){return"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random()}()},9855:function(e,t,n){"use strict";n.d(t,{W:function(){return i}});var i=function(){function e(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}return e.prototype=Object.create(Error.prototype),e}()},64646:function(e,t,n){"use strict";n.d(t,{K:function(){return i}});var i=function(){function e(){return Error.call(this),this.message="no elements in sequence",this.name="EmptyError",this}return e.prototype=Object.create(Error.prototype),e}()},96421:function(e,t,n){"use strict";n.d(t,{H:function(){return s}});var i=1,r=function(){return Promise.resolve()}(),o={};function a(e){return e in o&&(delete o[e],!0)}var s={setImmediate:function(e){var t=i++;return o[t]=!0,r.then(function(){return a(t)&&e()}),t},clearImmediate:function(e){a(e)}}},1696:function(e,t,n){"use strict";n.d(t,{N:function(){return i}});var i=function(){function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e}()},98691:function(e,t,n){"use strict";n.d(t,{W:function(){return i}});var i=function(){function e(){return Error.call(this),this.message="Timeout has occurred",this.name="TimeoutError",this}return e.prototype=Object.create(Error.prototype),e}()},66351:function(e,t,n){"use strict";n.d(t,{B:function(){return i}});var i=function(){function e(e){return Error.call(this),this.message=e?"".concat(e.length," errors occurred during unsubscription:\n").concat(e.map(function(e,t){return"".concat(t+1,") ").concat(e.toString())}).join("\n ")):"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e}()},2808:function(e,t,n){"use strict";function i(e,t){for(var n=0,i=t.length;n=0}},64902:function(e,t,n){"use strict";function i(e){return null!==e&&"object"==typeof e}n.d(t,{K:function(){return i}})},17504:function(e,t,n){"use strict";n.d(t,{b:function(){return r}});var i=n(89797);function r(e){return!!e&&(e instanceof i.y||"function"==typeof e.lift&&"function"==typeof e.subscribe)}},36514:function(e,t,n){"use strict";function i(e){return!!e&&"function"!=typeof e.subscribe&&"function"==typeof e.then}n.d(t,{t:function(){return i}})},91299:function(e,t,n){"use strict";function i(e){return e&&"function"==typeof e.schedule}n.d(t,{K:function(){return i}})},66029:function(e,t,n){"use strict";function i(){}n.d(t,{Z:function(){return i}})},59849:function(e,t,n){"use strict";function i(e,t){function n(){return!n.pred.apply(n.thisArg,arguments)}return n.pred=e,n.thisArg=t,n}n.d(t,{f:function(){return i}})},96194:function(e,t,n){"use strict";n.d(t,{z:function(){return r},U:function(){return o}});var i=n(57070);function r(){for(var e=arguments.length,t=new Array(e),n=0;n4&&void 0!==arguments[4]?arguments[4]:new i.d(e,n,a);if(!s.closed)return t instanceof o.y?t.subscribe(s):(0,r.s)(t)(s)}},3410:function(e,t,n){"use strict";n.d(t,{Y:function(){return a}});var i=n(39874),r=n(79542),o=n(88944);function a(e,t,n){if(e){if(e instanceof i.L)return e;if(e[r.b])return e[r.b]()}return e||t||n?new i.L(e,t,n):new i.L(o.c)}},73033:function(e,t,n){"use strict";n.r(t),n.d(t,{audit:function(){return i.U},auditTime:function(){return r.e},buffer:function(){return d},bufferCount:function(){return v},bufferTime:function(){return x},bufferToggle:function(){return I},bufferWhen:function(){return D},catchError:function(){return F.K},combineAll:function(){return j},combineLatest:function(){return Y},concat:function(){return G},concatAll:function(){return W.u},concatMap:function(){return V.b},concatMapTo:function(){return Q},count:function(){return X.Q},debounce:function(){return K},debounceTime:function(){return te.b},defaultIfEmpty:function(){return ne.d},delay:function(){return ie.g},delayWhen:function(){return oe},dematerialize:function(){return ue},distinct:function(){return pe},distinctUntilChanged:function(){return ge.x},distinctUntilKeyChanged:function(){return ve},elementAt:function(){return Se},endWith:function(){return Ce},every:function(){return ke},exhaust:function(){return Ze},exhaustMap:function(){return Pe},expand:function(){return Ne},filter:function(){return _e.h},finalize:function(){return Le.x},find:function(){return Fe},findIndex:function(){return ze},first:function(){return Ue.P},flatMap:function(){return dt.VS},groupBy:function(){return He.v},ignoreElements:function(){return Ye},isEmpty:function(){return We},last:function(){return Xe.Z},map:function(){return Ee.U},mapTo:function(){return Ke.h},materialize:function(){return et},max:function(){return st},merge:function(){return ct},mergeAll:function(){return ut.J},mergeMap:function(){return dt.zg},mergeMapTo:function(){return ht},mergeScan:function(){return pt},min:function(){return gt},multicast:function(){return vt.O},observeOn:function(){return yt.QV},onErrorResumeNext:function(){return _t},pairwise:function(){return St.G},partition:function(){return Ct},pluck:function(){return kt},publish:function(){return Zt},publishBehavior:function(){return Ot},publishLast:function(){return Pt},publishReplay:function(){return qt},race:function(){return Dt},reduce:function(){return at},refCount:function(){return Qt.x},repeat:function(){return Lt},repeatWhen:function(){return jt},retry:function(){return Ht},retryWhen:function(){return Gt},sample:function(){return Xt},sampleTime:function(){return en},scan:function(){return it.R},sequenceEqual:function(){return on},share:function(){return cn.B},shareReplay:function(){return un.d},single:function(){return hn},skip:function(){return mn.T},skipLast:function(){return gn},skipUntil:function(){return _n},skipWhile:function(){return Sn},startWith:function(){return kn.O},subscribeOn:function(){return An},switchAll:function(){return En},switchMap:function(){return Mn.w},switchMapTo:function(){return Pn},take:function(){return we.q},takeLast:function(){return rt.h},takeUntil:function(){return In.R},takeWhile:function(){return qn.o},tap:function(){return Nn.b},throttle:function(){return Dn.P},throttleTime:function(){return Rn},throwIfEmpty:function(){return be.T},timeInterval:function(){return jn.J},timeout:function(){return Wn},timeoutWith:function(){return Hn},timestamp:function(){return Vn.A},toArray:function(){return Xn},window:function(){return Kn},windowCount:function(){return ti},windowTime:function(){return oi},windowToggle:function(){return hi},windowWhen:function(){return mi},withLatestFrom:function(){return yi},zip:function(){return Si},zipAll:function(){return xi}});var i=n(67494),r=n(54562),o=n(3574),a=n(49843),s=n(37859),l=n(61680),c=n(11254),u=n(32124);function d(e){return function(t){return t.lift(new h(e))}}var h=function(){function e(t){(0,l.Z)(this,e),this.closingNotifier=t}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new p(e,this.closingNotifier))}}]),e}(),p=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i){var r;return(0,l.Z)(this,n),(r=t.call(this,e)).buffer=[],r.add((0,u.ft)(i,new u.IY((0,o.Z)(r)))),r}return(0,c.Z)(n,[{key:"_next",value:function(e){this.buffer.push(e)}},{key:"notifyNext",value:function(){var e=this.buffer;this.buffer=[],this.destination.next(e)}}]),n}(u.Ds),f=n(51751),m=n(12558),g=n(39874);function v(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return function(n){return n.lift(new y(e,t))}}var y=function(){function e(t,n){(0,l.Z)(this,e),this.bufferSize=t,this.startBufferEvery=n,this.subscriberClass=n&&t!==n?b:_}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new this.subscriberClass(e,this.bufferSize,this.startBufferEvery))}}]),e}(),_=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i){var r;return(0,l.Z)(this,n),(r=t.call(this,e)).bufferSize=i,r.buffer=[],r}return(0,c.Z)(n,[{key:"_next",value:function(e){var t=this.buffer;t.push(e),t.length==this.bufferSize&&(this.destination.next(t),this.buffer=[])}},{key:"_complete",value:function(){var e=this.buffer;e.length>0&&this.destination.next(e),(0,f.Z)((0,m.Z)(n.prototype),"_complete",this).call(this)}}]),n}(g.L),b=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r){var o;return(0,l.Z)(this,n),(o=t.call(this,e)).bufferSize=i,o.startBufferEvery=r,o.buffers=[],o.count=0,o}return(0,c.Z)(n,[{key:"_next",value:function(e){var t=this.bufferSize,n=this.startBufferEvery,i=this.buffers,r=this.count;this.count++,r%n==0&&i.push([]);for(var o=i.length;o--;){var a=i[o];a.push(e),a.length===t&&(i.splice(o,1),this.destination.next(a))}}},{key:"_complete",value:function(){for(var e=this.buffers,t=this.destination;e.length>0;){var i=e.shift();i.length>0&&t.next(i)}(0,f.Z)((0,m.Z)(n.prototype),"_complete",this).call(this)}}]),n}(g.L),w=n(46813),S=n(91299);function x(e){var t=arguments.length,n=w.P;(0,S.K)(arguments[arguments.length-1])&&(n=arguments[arguments.length-1],t--);var i=null;t>=2&&(i=arguments[1]);var r=Number.POSITIVE_INFINITY;return t>=3&&(r=arguments[2]),function(t){return t.lift(new C(e,i,r,n))}}var C=function(){function e(t,n,i,r){(0,l.Z)(this,e),this.bufferTimeSpan=t,this.bufferCreationInterval=n,this.maxBufferSize=i,this.scheduler=r}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new T(e,this.bufferTimeSpan,this.bufferCreationInterval,this.maxBufferSize,this.scheduler))}}]),e}(),k=function e(){(0,l.Z)(this,e),this.buffer=[]},T=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r,a,s){var c;(0,l.Z)(this,n),(c=t.call(this,e)).bufferTimeSpan=i,c.bufferCreationInterval=r,c.maxBufferSize=a,c.scheduler=s,c.contexts=[];var u=c.openContext();if(c.timespanOnly=null==r||r<0,c.timespanOnly){var d={subscriber:(0,o.Z)(c),context:u,bufferTimeSpan:i};c.add(u.closeAction=s.schedule(A,i,d))}else{var h={subscriber:(0,o.Z)(c),context:u},p={bufferTimeSpan:i,bufferCreationInterval:r,subscriber:(0,o.Z)(c),scheduler:s};c.add(u.closeAction=s.schedule(M,i,h)),c.add(s.schedule(Z,r,p))}return c}return(0,c.Z)(n,[{key:"_next",value:function(e){for(var t,n=this.contexts,i=n.length,r=0;r0;){var i=e.shift();t.next(i.buffer)}(0,f.Z)((0,m.Z)(n.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){this.contexts=null}},{key:"onBufferFull",value:function(e){this.closeContext(e);var t=e.closeAction;if(t.unsubscribe(),this.remove(t),!this.closed&&this.timespanOnly){e=this.openContext();var n=this.bufferTimeSpan;this.add(e.closeAction=this.scheduler.schedule(A,n,{subscriber:this,context:e,bufferTimeSpan:n}))}}},{key:"openContext",value:function(){var e=new k;return this.contexts.push(e),e}},{key:"closeContext",value:function(e){this.destination.next(e.buffer);var t=this.contexts;(t?t.indexOf(e):-1)>=0&&t.splice(t.indexOf(e),1)}}]),n}(g.L);function A(e){var t=e.subscriber,n=e.context;n&&t.closeContext(n),t.closed||(e.context=t.openContext(),e.context.closeAction=this.schedule(e,e.bufferTimeSpan))}function Z(e){var t=e.bufferCreationInterval,n=e.bufferTimeSpan,i=e.subscriber,r=e.scheduler,o=i.openContext();i.closed||(i.add(o.closeAction=r.schedule(M,n,{subscriber:i,context:o})),this.schedule(e,t))}function M(e){e.subscriber.closeContext(e.context)}var O=n(5051),E=n(61454),P=n(7283);function I(e,t){return function(n){return n.lift(new q(e,t))}}var q=function(){function e(t,n){(0,l.Z)(this,e),this.openings=t,this.closingSelector=n}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new N(e,this.openings,this.closingSelector))}}]),e}(),N=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r){var a;return(0,l.Z)(this,n),(a=t.call(this,e)).closingSelector=r,a.contexts=[],a.add((0,E.D)((0,o.Z)(a),i)),a}return(0,c.Z)(n,[{key:"_next",value:function(e){for(var t=this.contexts,n=t.length,i=0;i0;){var i=t.shift();i.subscription.unsubscribe(),i.buffer=null,i.subscription=null}this.contexts=null,(0,f.Z)((0,m.Z)(n.prototype),"_error",this).call(this,e)}},{key:"_complete",value:function(){for(var e=this.contexts;e.length>0;){var t=e.shift();this.destination.next(t.buffer),t.subscription.unsubscribe(),t.buffer=null,t.subscription=null}this.contexts=null,(0,f.Z)((0,m.Z)(n.prototype),"_complete",this).call(this)}},{key:"notifyNext",value:function(e,t){e?this.closeBuffer(e):this.openBuffer(t)}},{key:"notifyComplete",value:function(e){this.closeBuffer(e.context)}},{key:"openBuffer",value:function(e){try{var t=this.closingSelector.call(this,e);t&&this.trySubscribe(t)}catch(n){this._error(n)}}},{key:"closeBuffer",value:function(e){var t=this.contexts;if(t&&e){var n=e.subscription;this.destination.next(e.buffer),t.splice(t.indexOf(e),1),this.remove(n),n.unsubscribe()}}},{key:"trySubscribe",value:function(e){var t=this.contexts,n=new O.w,i={buffer:[],subscription:n};t.push(i);var r=(0,E.D)(this,e,i);!r||r.closed?this.closeBuffer(i):(r.context=i,this.add(r),n.add(r))}}]),n}(P.L);function D(e){return function(t){return t.lift(new R(e))}}var R=function(){function e(t){(0,l.Z)(this,e),this.closingSelector=t}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new L(e,this.closingSelector))}}]),e}(),L=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i){var r;return(0,l.Z)(this,n),(r=t.call(this,e)).closingSelector=i,r.subscribing=!1,r.openBuffer(),r}return(0,c.Z)(n,[{key:"_next",value:function(e){this.buffer.push(e)}},{key:"_complete",value:function(){var e=this.buffer;e&&this.destination.next(e),(0,f.Z)((0,m.Z)(n.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){this.buffer=void 0,this.subscribing=!1}},{key:"notifyNext",value:function(){this.openBuffer()}},{key:"notifyComplete",value:function(){this.subscribing?this.complete():this.openBuffer()}},{key:"openBuffer",value:function(){var e,t=this.closingSubscription;t&&(this.remove(t),t.unsubscribe()),this.buffer&&this.destination.next(this.buffer),this.buffer=[];try{e=(0,this.closingSelector)()}catch(n){return this.error(n)}t=new O.w,this.closingSubscription=t,this.add(t),this.subscribing=!0,t.add((0,u.ft)(e,new u.IY(this))),this.subscribing=!1}}]),n}(u.Ds),F=n(13426),B=n(81370);function j(e){return function(t){return t.lift(new B.Ms(e))}}var z=n(25801),U=n(78985),H=n(61493);function Y(){for(var e=arguments.length,t=new Array(e),n=0;n=2;return function(i){return i.pipe((0,_e.h)(function(t,n){return n===e}),(0,we.q)(1),n?(0,ne.d)(t):(0,be.T)(function(){return new ye.W}))}}var xe=n(43161);function Ce(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY,n=arguments.length>2?arguments[2]:void 0;return t=(t||0)<1?Number.POSITIVE_INFINITY:t,function(i){return i.lift(new De(e,t,n))}}var De=function(){function e(t,n,i){(0,l.Z)(this,e),this.project=t,this.concurrent=n,this.scheduler=i}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new Re(e,this.project,this.concurrent,this.scheduler))}}]),e}(),Re=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r,o){var a;return(0,l.Z)(this,n),(a=t.call(this,e)).project=i,a.concurrent=r,a.scheduler=o,a.index=0,a.active=0,a.hasCompleted=!1,r0&&this._next(e.shift()),this.hasCompleted&&0===this.active&&this.destination.complete()}}],[{key:"dispatch",value:function(e){e.subscriber.subscribeToProjection(e.result,e.value,e.index)}}]),n}(u.Ds),Le=n(59803);function Fe(e,t){if("function"!=typeof e)throw new TypeError("predicate is not a function");return function(n){return n.lift(new Be(e,n,!1,t))}}var Be=function(){function e(t,n,i,r){(0,l.Z)(this,e),this.predicate=t,this.source=n,this.yieldIndex=i,this.thisArg=r}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new je(e,this.predicate,this.source,this.yieldIndex,this.thisArg))}}]),e}(),je=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r,o,a){var s;return(0,l.Z)(this,n),(s=t.call(this,e)).predicate=i,s.source=r,s.yieldIndex=o,s.thisArg=a,s.index=0,s}return(0,c.Z)(n,[{key:"notifyComplete",value:function(e){var t=this.destination;t.next(e),t.complete(),this.unsubscribe()}},{key:"_next",value:function(e){var t=this.predicate,n=this.thisArg,i=this.index++;try{t.call(n||this,e,i,this.source)&&this.notifyComplete(this.yieldIndex?i:e)}catch(r){this.destination.error(r)}}},{key:"_complete",value:function(){this.notifyComplete(this.yieldIndex?-1:void 0)}}]),n}(g.L);function ze(e,t){return function(n){return n.lift(new Be(e,n,!0,t))}}var Ue=n(64233),He=n(86072);function Ye(){return function(e){return e.lift(new Je)}}var Je=function(){function e(){(0,l.Z)(this,e)}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new Ge(e))}}]),e}(),Ge=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(){return(0,l.Z)(this,n),t.apply(this,arguments)}return(0,c.Z)(n,[{key:"_next",value:function(e){}}]),n}(g.L);function We(){return function(e){return e.lift(new Ve)}}var Ve=function(){function e(){(0,l.Z)(this,e)}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new Qe(e))}}]),e}(),Qe=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e){return(0,l.Z)(this,n),t.call(this,e)}return(0,c.Z)(n,[{key:"notifyComplete",value:function(e){var t=this.destination;t.next(e),t.complete()}},{key:"_next",value:function(e){this.notifyComplete(!1)}},{key:"_complete",value:function(){this.notifyComplete(!0)}}]),n}(g.L),Xe=n(99583),Ke=n(12698),$e=n(80286);function et(){return function(e){return e.lift(new tt)}}var tt=function(){function e(){(0,l.Z)(this,e)}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new nt(e))}}]),e}(),nt=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e){return(0,l.Z)(this,n),t.call(this,e)}return(0,c.Z)(n,[{key:"_next",value:function(e){this.destination.next($e.P.createNext(e))}},{key:"_error",value:function(e){var t=this.destination;t.next($e.P.createError(e)),t.complete()}},{key:"_complete",value:function(){var e=this.destination;e.next($e.P.createComplete()),e.complete()}}]),n}(g.L),it=n(31927),rt=n(64397),ot=n(96194);function at(e,t){return arguments.length>=2?function(n){return(0,ot.z)((0,it.R)(e,t),(0,rt.h)(1),(0,ne.d)(t))(n)}:function(t){return(0,ot.z)((0,it.R)(function(t,n,i){return e(t,n,i+1)}),(0,rt.h)(1))(t)}}function st(e){return at("function"==typeof e?function(t,n){return e(t,n)>0?t:n}:function(e,t){return e>t?e:t})}var lt=n(55371);function ct(){for(var e=arguments.length,t=new Array(e),n=0;n2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof t?(0,dt.zg)(function(){return e},t,n):("number"==typeof t&&(n=t),(0,dt.zg)(function(){return e},n))}function pt(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return function(i){return i.lift(new ft(e,t,n))}}var ft=function(){function e(t,n,i){(0,l.Z)(this,e),this.accumulator=t,this.seed=n,this.concurrent=i}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new mt(e,this.accumulator,this.seed,this.concurrent))}}]),e}(),mt=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r,o){var a;return(0,l.Z)(this,n),(a=t.call(this,e)).accumulator=i,a.acc=r,a.concurrent=o,a.hasValue=!1,a.hasCompleted=!1,a.buffer=[],a.active=0,a.index=0,a}return(0,c.Z)(n,[{key:"_next",value:function(e){if(this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&(!1===this.hasValue&&this.destination.next(this.acc),this.destination.complete())}}]),n}(u.Ds);function gt(e){return at("function"==typeof e?function(t,n){return e(t,n)<0?t:n}:function(e,t){return e0&&void 0!==arguments[0]?arguments[0]:-1;return function(t){return 0===e?(0,Rt.c)():t.lift(new Ft(e<0?-1:e-1,t))}}var Ft=function(){function e(t,n){(0,l.Z)(this,e),this.count=t,this.source=n}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new Bt(e,this.count,this.source))}}]),e}(),Bt=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r){var o;return(0,l.Z)(this,n),(o=t.call(this,e)).count=i,o.source=r,o}return(0,c.Z)(n,[{key:"complete",value:function(){if(!this.isStopped){var e=this.source,t=this.count;if(0===t)return(0,f.Z)((0,m.Z)(n.prototype),"complete",this).call(this);t>-1&&(this.count=t-1),e.subscribe(this._unsubscribeAndRecycle())}}}]),n}(g.L);function jt(e){return function(t){return t.lift(new zt(e))}}var zt=function(){function e(t){(0,l.Z)(this,e),this.notifier=t}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new Ut(e,this.notifier,t))}}]),e}(),Ut=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r){var o;return(0,l.Z)(this,n),(o=t.call(this,e)).notifier=i,o.source=r,o.sourceIsBeingSubscribedTo=!0,o}return(0,c.Z)(n,[{key:"notifyNext",value:function(){this.sourceIsBeingSubscribedTo=!0,this.source.subscribe(this)}},{key:"notifyComplete",value:function(){if(!1===this.sourceIsBeingSubscribedTo)return(0,f.Z)((0,m.Z)(n.prototype),"complete",this).call(this)}},{key:"complete",value:function(){if(this.sourceIsBeingSubscribedTo=!1,!this.isStopped){if(this.retries||this.subscribeToRetries(),!this.retriesSubscription||this.retriesSubscription.closed)return(0,f.Z)((0,m.Z)(n.prototype),"complete",this).call(this);this._unsubscribeAndRecycle(),this.notifications.next(void 0)}}},{key:"_unsubscribe",value:function(){var e=this.notifications,t=this.retriesSubscription;e&&(e.unsubscribe(),this.notifications=void 0),t&&(t.unsubscribe(),this.retriesSubscription=void 0),this.retries=void 0}},{key:"_unsubscribeAndRecycle",value:function(){var e=this._unsubscribe;return this._unsubscribe=null,(0,f.Z)((0,m.Z)(n.prototype),"_unsubscribeAndRecycle",this).call(this),this._unsubscribe=e,this}},{key:"subscribeToRetries",value:function(){var e;this.notifications=new At.xQ;try{e=(0,this.notifier)(this.notifications)}catch(t){return(0,f.Z)((0,m.Z)(n.prototype),"complete",this).call(this)}this.retries=e,this.retriesSubscription=(0,u.ft)(e,new u.IY(this))}}]),n}(u.Ds);function Ht(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;return function(t){return t.lift(new Yt(e,t))}}var Yt=function(){function e(t,n){(0,l.Z)(this,e),this.count=t,this.source=n}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new Jt(e,this.count,this.source))}}]),e}(),Jt=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r){var o;return(0,l.Z)(this,n),(o=t.call(this,e)).count=i,o.source=r,o}return(0,c.Z)(n,[{key:"error",value:function(e){if(!this.isStopped){var t=this.source,i=this.count;if(0===i)return(0,f.Z)((0,m.Z)(n.prototype),"error",this).call(this,e);i>-1&&(this.count=i-1),t.subscribe(this._unsubscribeAndRecycle())}}}]),n}(g.L);function Gt(e){return function(t){return t.lift(new Wt(e,t))}}var Wt=function(){function e(t,n){(0,l.Z)(this,e),this.notifier=t,this.source=n}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new Vt(e,this.notifier,this.source))}}]),e}(),Vt=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r){var o;return(0,l.Z)(this,n),(o=t.call(this,e)).notifier=i,o.source=r,o}return(0,c.Z)(n,[{key:"error",value:function(e){if(!this.isStopped){var t=this.errors,i=this.retries,r=this.retriesSubscription;if(i)this.errors=void 0,this.retriesSubscription=void 0;else{t=new At.xQ;try{i=(0,this.notifier)(t)}catch(o){return(0,f.Z)((0,m.Z)(n.prototype),"error",this).call(this,o)}r=(0,u.ft)(i,new u.IY(this))}this._unsubscribeAndRecycle(),this.errors=t,this.retries=i,this.retriesSubscription=r,t.next(e)}}},{key:"_unsubscribe",value:function(){var e=this.errors,t=this.retriesSubscription;e&&(e.unsubscribe(),this.errors=void 0),t&&(t.unsubscribe(),this.retriesSubscription=void 0),this.retries=void 0}},{key:"notifyNext",value:function(){var e=this._unsubscribe;this._unsubscribe=null,this._unsubscribeAndRecycle(),this._unsubscribe=e,this.source.subscribe(this)}}]),n}(u.Ds),Qt=n(26575);function Xt(e){return function(t){return t.lift(new Kt(e))}}var Kt=function(){function e(t){(0,l.Z)(this,e),this.notifier=t}return(0,c.Z)(e,[{key:"call",value:function(e,t){var n=new $t(e),i=t.subscribe(n);return i.add((0,u.ft)(this.notifier,new u.IY(n))),i}}]),e}(),$t=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(){var e;return(0,l.Z)(this,n),(e=t.apply(this,arguments)).hasValue=!1,e}return(0,c.Z)(n,[{key:"_next",value:function(e){this.value=e,this.hasValue=!0}},{key:"notifyNext",value:function(){this.emitValue()}},{key:"notifyComplete",value:function(){this.emitValue()}},{key:"emitValue",value:function(){this.hasValue&&(this.hasValue=!1,this.destination.next(this.value))}}]),n}(u.Ds);function en(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:w.P;return function(n){return n.lift(new tn(e,t))}}var tn=function(){function e(t,n){(0,l.Z)(this,e),this.period=t,this.scheduler=n}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new nn(e,this.period,this.scheduler))}}]),e}(),nn=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r){var a;return(0,l.Z)(this,n),(a=t.call(this,e)).period=i,a.scheduler=r,a.hasValue=!1,a.add(r.schedule(rn,i,{subscriber:(0,o.Z)(a),period:i})),a}return(0,c.Z)(n,[{key:"_next",value:function(e){this.lastValue=e,this.hasValue=!0}},{key:"notifyNext",value:function(){this.hasValue&&(this.hasValue=!1,this.destination.next(this.lastValue))}}]),n}(g.L);function rn(e){var t=e.period;e.subscriber.notifyNext(),this.schedule(e,t)}function on(e,t){return function(n){return n.lift(new an(e,t))}}var an=function(){function e(t,n){(0,l.Z)(this,e),this.compareTo=t,this.comparator=n}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new sn(e,this.compareTo,this.comparator))}}]),e}(),sn=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r){var a;return(0,l.Z)(this,n),(a=t.call(this,e)).compareTo=i,a.comparator=r,a._a=[],a._b=[],a._oneComplete=!1,a.destination.add(i.subscribe(new ln(e,(0,o.Z)(a)))),a}return(0,c.Z)(n,[{key:"_next",value:function(e){this._oneComplete&&0===this._b.length?this.emit(!1):(this._a.push(e),this.checkValues())}},{key:"_complete",value:function(){this._oneComplete?this.emit(0===this._a.length&&0===this._b.length):this._oneComplete=!0,this.unsubscribe()}},{key:"checkValues",value:function(){for(var e=this._a,t=this._b,n=this.comparator;e.length>0&&t.length>0;){var i=e.shift(),r=t.shift(),o=!1;try{o=n?n(i,r):i===r}catch(a){this.destination.error(a)}o||this.emit(!1)}}},{key:"emit",value:function(e){var t=this.destination;t.next(e),t.complete()}},{key:"nextB",value:function(e){this._oneComplete&&0===this._a.length?this.emit(!1):(this._b.push(e),this.checkValues())}},{key:"completeB",value:function(){this._oneComplete?this.emit(0===this._a.length&&0===this._b.length):this._oneComplete=!0}}]),n}(g.L),ln=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i){var r;return(0,l.Z)(this,n),(r=t.call(this,e)).parent=i,r}return(0,c.Z)(n,[{key:"_next",value:function(e){this.parent.nextB(e)}},{key:"_error",value:function(e){this.parent.error(e),this.unsubscribe()}},{key:"_complete",value:function(){this.parent.completeB(),this.unsubscribe()}}]),n}(g.L),cn=n(16338),un=n(61106),dn=n(64646);function hn(e){return function(t){return t.lift(new pn(e,t))}}var pn=function(){function e(t,n){(0,l.Z)(this,e),this.predicate=t,this.source=n}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new fn(e,this.predicate,this.source))}}]),e}(),fn=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r){var o;return(0,l.Z)(this,n),(o=t.call(this,e)).predicate=i,o.source=r,o.seenValue=!1,o.index=0,o}return(0,c.Z)(n,[{key:"applySingleValue",value:function(e){this.seenValue?this.destination.error("Sequence contains more than one element"):(this.seenValue=!0,this.singleValue=e)}},{key:"_next",value:function(e){var t=this.index++;this.predicate?this.tryNext(e,t):this.applySingleValue(e)}},{key:"tryNext",value:function(e,t){try{this.predicate(e,t,this.source)&&this.applySingleValue(e)}catch(n){this.destination.error(n)}}},{key:"_complete",value:function(){var e=this.destination;this.index>0?(e.next(this.seenValue?this.singleValue:void 0),e.complete()):e.error(new dn.K)}}]),n}(g.L),mn=n(18756);function gn(e){return function(t){return t.lift(new vn(e))}}var vn=function(){function e(t){if((0,l.Z)(this,e),this._skipCount=t,this._skipCount<0)throw new ye.W}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(0===this._skipCount?new g.L(e):new yn(e,this._skipCount))}}]),e}(),yn=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i){var r;return(0,l.Z)(this,n),(r=t.call(this,e))._skipCount=i,r._count=0,r._ring=new Array(i),r}return(0,c.Z)(n,[{key:"_next",value:function(e){var t=this._skipCount,n=this._count++;if(n1&&void 0!==arguments[1]?arguments[1]:0;return function(n){return n.lift(new Zn(e,t))}}var Zn=function(){function e(t,n){(0,l.Z)(this,e),this.scheduler=t,this.delay=n}return(0,c.Z)(e,[{key:"call",value:function(e,t){return new Tn.e(t,this.delay,this.scheduler).subscribe(e)}}]),e}(),Mn=n(34487),On=n(57070);function En(){return(0,Mn.w)(On.y)}function Pn(e,t){return t?(0,Mn.w)(function(){return e},t):(0,Mn.w)(function(){return e})}var In=n(44213),qn=n(49196),Nn=n(59371),Dn=n(243);function Rn(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:w.P,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Dn.d;return function(i){return i.lift(new Ln(e,t,n.leading,n.trailing))}}var Ln=function(){function e(t,n,i,r){(0,l.Z)(this,e),this.duration=t,this.scheduler=n,this.leading=i,this.trailing=r}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new Fn(e,this.duration,this.scheduler,this.leading,this.trailing))}}]),e}(),Fn=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r,o,a){var s;return(0,l.Z)(this,n),(s=t.call(this,e)).duration=i,s.scheduler=r,s.leading=o,s.trailing=a,s._hasTrailingValue=!1,s._trailingValue=null,s}return(0,c.Z)(n,[{key:"_next",value:function(e){this.throttled?this.trailing&&(this._trailingValue=e,this._hasTrailingValue=!0):(this.add(this.throttled=this.scheduler.schedule(Bn,this.duration,{subscriber:this})),this.leading?this.destination.next(e):this.trailing&&(this._trailingValue=e,this._hasTrailingValue=!0))}},{key:"_complete",value:function(){this._hasTrailingValue?(this.destination.next(this._trailingValue),this.destination.complete()):this.destination.complete()}},{key:"clearThrottle",value:function(){var e=this.throttled;e&&(this.trailing&&this._hasTrailingValue&&(this.destination.next(this._trailingValue),this._trailingValue=null,this._hasTrailingValue=!1),e.unsubscribe(),this.remove(e),this.throttled=null)}}]),n}(g.L);function Bn(e){e.subscriber.clearThrottle()}var jn=n(73445),zn=n(98691),Un=n(88972);function Hn(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:w.P;return function(i){var r=(0,Un.J)(e),o=r?+e-n.now():Math.abs(e);return i.lift(new Yn(o,r,t,n))}}var Yn=function(){function e(t,n,i,r){(0,l.Z)(this,e),this.waitFor=t,this.absoluteTimeout=n,this.withObservable=i,this.scheduler=r}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new Jn(e,this.absoluteTimeout,this.waitFor,this.withObservable,this.scheduler))}}]),e}(),Jn=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r,o,a){var s;return(0,l.Z)(this,n),(s=t.call(this,e)).absoluteTimeout=i,s.waitFor=r,s.withObservable=o,s.scheduler=a,s.scheduleTimeout(),s}return(0,c.Z)(n,[{key:"scheduleTimeout",value:function(){var e=this.action;e?this.action=e.schedule(this,this.waitFor):this.add(this.action=this.scheduler.schedule(n.dispatchTimeout,this.waitFor,this))}},{key:"_next",value:function(e){this.absoluteTimeout||this.scheduleTimeout(),(0,f.Z)((0,m.Z)(n.prototype),"_next",this).call(this,e)}},{key:"_unsubscribe",value:function(){this.action=void 0,this.scheduler=null,this.withObservable=null}}],[{key:"dispatchTimeout",value:function(e){var t=e.withObservable;e._unsubscribeAndRecycle(),e.add((0,u.ft)(t,new u.IY(e)))}}]),n}(u.Ds),Gn=n(11363);function Wn(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:w.P;return Hn(e,(0,Gn._)(new zn.W),t)}var Vn=n(63706);function Qn(e,t,n){return 0===n?[t]:(e.push(t),e)}function Xn(){return at(Qn,[])}function Kn(e){return function(t){return t.lift(new $n(e))}}var $n=function(){function e(t){(0,l.Z)(this,e),this.windowBoundaries=t}return(0,c.Z)(e,[{key:"call",value:function(e,t){var n=new ei(e),i=t.subscribe(n);return i.closed||n.add((0,u.ft)(this.windowBoundaries,new u.IY(n))),i}}]),e}(),ei=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e){var i;return(0,l.Z)(this,n),(i=t.call(this,e)).window=new At.xQ,e.next(i.window),i}return(0,c.Z)(n,[{key:"notifyNext",value:function(){this.openWindow()}},{key:"notifyError",value:function(e){this._error(e)}},{key:"notifyComplete",value:function(){this._complete()}},{key:"_next",value:function(e){this.window.next(e)}},{key:"_error",value:function(e){this.window.error(e),this.destination.error(e)}},{key:"_complete",value:function(){this.window.complete(),this.destination.complete()}},{key:"_unsubscribe",value:function(){this.window=null}},{key:"openWindow",value:function(){var e=this.window;e&&e.complete();var t=this.destination,n=this.window=new At.xQ;t.next(n)}}]),n}(u.Ds);function ti(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return function(n){return n.lift(new ni(e,t))}}var ni=function(){function e(t,n){(0,l.Z)(this,e),this.windowSize=t,this.startWindowEvery=n}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new ii(e,this.windowSize,this.startWindowEvery))}}]),e}(),ii=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r){var o;return(0,l.Z)(this,n),(o=t.call(this,e)).destination=e,o.windowSize=i,o.startWindowEvery=r,o.windows=[new At.xQ],o.count=0,e.next(o.windows[0]),o}return(0,c.Z)(n,[{key:"_next",value:function(e){for(var t=this.startWindowEvery>0?this.startWindowEvery:this.windowSize,n=this.destination,i=this.windowSize,r=this.windows,o=r.length,a=0;a=0&&s%t==0&&!this.closed&&r.shift().complete(),++this.count%t==0&&!this.closed){var l=new At.xQ;r.push(l),n.next(l)}}},{key:"_error",value:function(e){var t=this.windows;if(t)for(;t.length>0&&!this.closed;)t.shift().error(e);this.destination.error(e)}},{key:"_complete",value:function(){var e=this.windows;if(e)for(;e.length>0&&!this.closed;)e.shift().complete();this.destination.complete()}},{key:"_unsubscribe",value:function(){this.count=0,this.windows=null}}]),n}(g.L),ri=n(11705);function oi(e){var t=w.P,n=null,i=Number.POSITIVE_INFINITY;return(0,S.K)(arguments[3])&&(t=arguments[3]),(0,S.K)(arguments[2])?t=arguments[2]:(0,ri.k)(arguments[2])&&(i=Number(arguments[2])),(0,S.K)(arguments[1])?t=arguments[1]:(0,ri.k)(arguments[1])&&(n=Number(arguments[1])),function(r){return r.lift(new ai(e,n,i,t))}}var ai=function(){function e(t,n,i,r){(0,l.Z)(this,e),this.windowTimeSpan=t,this.windowCreationInterval=n,this.maxWindowSize=i,this.scheduler=r}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new li(e,this.windowTimeSpan,this.windowCreationInterval,this.maxWindowSize,this.scheduler))}}]),e}(),si=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(){var e;return(0,l.Z)(this,n),(e=t.apply(this,arguments))._numberOfNextedValues=0,e}return(0,c.Z)(n,[{key:"next",value:function(e){this._numberOfNextedValues++,(0,f.Z)((0,m.Z)(n.prototype),"next",this).call(this,e)}},{key:"numberOfNextedValues",get:function(){return this._numberOfNextedValues}}]),n}(At.xQ),li=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r,a,s){var c;(0,l.Z)(this,n),(c=t.call(this,e)).destination=e,c.windowTimeSpan=i,c.windowCreationInterval=r,c.maxWindowSize=a,c.scheduler=s,c.windows=[];var u=c.openWindow();if(null!==r&&r>=0){var d={subscriber:(0,o.Z)(c),window:u,context:null},h={windowTimeSpan:i,windowCreationInterval:r,subscriber:(0,o.Z)(c),scheduler:s};c.add(s.schedule(di,i,d)),c.add(s.schedule(ui,r,h))}else{var p={subscriber:(0,o.Z)(c),window:u,windowTimeSpan:i};c.add(s.schedule(ci,i,p))}return c}return(0,c.Z)(n,[{key:"_next",value:function(e){for(var t=this.windows,n=t.length,i=0;i=this.maxWindowSize&&this.closeWindow(r))}}},{key:"_error",value:function(e){for(var t=this.windows;t.length>0;)t.shift().error(e);this.destination.error(e)}},{key:"_complete",value:function(){for(var e=this.windows;e.length>0;){var t=e.shift();t.closed||t.complete()}this.destination.complete()}},{key:"openWindow",value:function(){var e=new si;return this.windows.push(e),this.destination.next(e),e}},{key:"closeWindow",value:function(e){e.complete();var t=this.windows;t.splice(t.indexOf(e),1)}}]),n}(g.L);function ci(e){var t=e.subscriber,n=e.windowTimeSpan,i=e.window;i&&t.closeWindow(i),e.window=t.openWindow(),this.schedule(e,n)}function ui(e){var t=e.windowTimeSpan,n=e.subscriber,i=e.scheduler,r=e.windowCreationInterval,o=n.openWindow(),a=this,s={action:a,subscription:null};s.subscription=i.schedule(di,t,{subscriber:n,window:o,context:s}),a.add(s.subscription),a.schedule(e,r)}function di(e){var t=e.subscriber,n=e.window,i=e.context;i&&i.action&&i.subscription&&i.action.remove(i.subscription),t.closeWindow(n)}function hi(e,t){return function(n){return n.lift(new pi(e,t))}}var pi=function(){function e(t,n){(0,l.Z)(this,e),this.openings=t,this.closingSelector=n}return(0,c.Z)(e,[{key:"call",value:function(e,t){return t.subscribe(new fi(e,this.openings,this.closingSelector))}}]),e}(),fi=function(e){(0,a.Z)(n,e);var t=(0,s.Z)(n);function n(e,i,r){var a;return(0,l.Z)(this,n),(a=t.call(this,e)).openings=i,a.closingSelector=r,a.contexts=[],a.add(a.openSubscription=(0,E.D)((0,o.Z)(a),i,i)),a}return(0,c.Z)(n,[{key:"_next",value:function(e){var t=this.contexts;if(t)for(var n=t.length,i=0;i0&&void 0!==arguments[0]?arguments[0]:null;e&&(this.remove(e),e.unsubscribe());var t=this.window;t&&t.complete();var n,i=this.window=new At.xQ;this.destination.next(i);try{var r=this.closingSelector;n=r()}catch(o){return this.destination.error(o),void this.window.error(o)}this.add(this.closingNotification=(0,E.D)(this,n))}}]),n}(P.L);function yi(){for(var e=arguments.length,t=new Array(e),n=0;n0){var r=i.indexOf(n);-1!==r&&i.splice(r,1)}}},{key:"notifyComplete",value:function(){}},{key:"_next",value:function(e){if(0===this.toRespond.length){var t=[e].concat((0,z.Z)(this.values));this.project?this._tryProject(t):this.destination.next(t)}}},{key:"_tryProject",value:function(e){var t;try{t=this.project.apply(this,e)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}]),n}(P.L),wi=n(43008);function Si(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;(0,i.Z)(this,e),this.subscribedFrame=t,this.unsubscribedFrame=n},p=(n(2808),function(e){(0,s.Z)(n,e);var t=(0,l.Z)(n);function n(e,r){var o;return(0,i.Z)(this,n),(o=t.call(this,function(e){var t=this,n=t.logSubscribedFrame(),i=new d.w;return i.add(new d.w(function(){t.logUnsubscribedFrame(n)})),t.scheduleMessages(e),i})).messages=e,o.subscriptions=[],o.scheduler=r,o}return(0,r.Z)(n,[{key:"scheduleMessages",value:function(e){for(var t=this.messages.length,n=0;n1&&void 0!==arguments[1]?arguments[1]:null,o=[],a={actual:o,ready:!1},s=n.parseMarblesAsSubscriptions(r,this.runMode),l=s.subscribedFrame===Number.POSITIVE_INFINITY?0:s.subscribedFrame,d=s.unsubscribedFrame;this.schedule(function(){t=e.subscribe(function(e){var t=e;e instanceof c.y&&(t=i.materializeInnerObservable(t,i.frame)),o.push({frame:i.frame,notification:u.P.createNext(t)})},function(e){o.push({frame:i.frame,notification:u.P.createError(e)})},function(){o.push({frame:i.frame,notification:u.P.createComplete()})})},l),d!==Number.POSITIVE_INFINITY&&this.schedule(function(){return t.unsubscribe()},d),this.flushTests.push(a);var h=this.runMode;return{toBe:function(e,t,i){a.ready=!0,a.expected=n.parseMarbles(e,t,i,!0,h)}}}},{key:"expectSubscriptions",value:function(e){var t={actual:e,ready:!1};this.flushTests.push(t);var i=this.runMode;return{toBe:function(e){var r="string"==typeof e?[e]:e;t.ready=!0,t.expected=r.map(function(e){return n.parseMarblesAsSubscriptions(e,i)})}}}},{key:"flush",value:function(){for(var e=this,t=this.hotObservables;t.length>0;)t.shift().setup();(0,o.Z)((0,a.Z)(n.prototype),"flush",this).call(this),this.flushTests=this.flushTests.filter(function(t){return!t.ready||(e.assertDeepEqual(t.actual,t.expected),!1)})}},{key:"run",value:function(e){var t=n.frameTimeFactor,i=this.maxFrames;n.frameTimeFactor=1,this.maxFrames=Number.POSITIVE_INFINITY,this.runMode=!0,g.v.delegate=this;var r={cold:this.createColdObservable.bind(this),hot:this.createHotObservable.bind(this),flush:this.flush.bind(this),expectObservable:this.expectObservable.bind(this),expectSubscriptions:this.expectSubscriptions.bind(this)};try{var o=e(r);return this.flush(),o}finally{n.frameTimeFactor=t,this.maxFrames=i,this.runMode=!1,g.v.delegate=void 0}}}],[{key:"parseMarblesAsSubscriptions",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if("string"!=typeof e)return new h(Number.POSITIVE_INFINITY);for(var i=e.length,r=-1,o=Number.POSITIVE_INFINITY,a=Number.POSITIVE_INFINITY,s=0,l=0;l-1?r:s,u(1);break;case"!":if(a!==Number.POSITIVE_INFINITY)throw new Error("found a second subscription point '^' in a subscription marble diagram. There can only be one.");a=r>-1?r:s;break;default:if(n&&d.match(/^[0-9]$/)&&(0===l||" "===e[l-1])){var p=e.slice(l),f=p.match(/^([0-9]+(?:\.[0-9]+)?)(ms|s|m) /);if(f){l+=f[0].length-1;var m=parseFloat(f[1]),g=f[2],v=void 0;switch(g){case"ms":v=m;break;case"s":v=1e3*m;break;case"m":v=1e3*m*60}u(v/this.frameTimeFactor);break}}throw new Error("there can only be '^' and '!' markers in a subscription marble diagram. Found instead '"+d+"'.")}s=c}return a<0?new h(o):new h(o,a)}},{key:"parseMarbles",value:function(e,t,n){var i=this,r=arguments.length>3&&void 0!==arguments[3]&&arguments[3],o=arguments.length>4&&void 0!==arguments[4]&&arguments[4];if(-1!==e.indexOf("!"))throw new Error('conventional marble diagrams cannot have the unsubscription marker "!"');for(var a=e.length,s=[],l=o?e.replace(/^[ ]+/,"").indexOf("^"):e.indexOf("^"),c=-1===l?0:l*-this.frameTimeFactor,d="object"!=typeof t?function(e){return e}:function(e){return r&&t[e]instanceof p?t[e].messages:t[e]},h=-1,f=0;f-1?h:c,notification:v}),c=m}return s}}]),n}(m.y)},4194:function(e,t,n){"use strict";n.r(t),n.d(t,{webSocket:function(){return i.j},WebSocketSubject:function(){return r.p}});var i=n(99298),r=n(46095)},26918:function(e,t,n){"use strict";n(68663)},56205:function(e,t){"use strict";var n;!function(){var i=t||{}||this||window;void 0===(n=(function(){return i}).apply(t,[]))||(e.exports=n),i.default=i;var r="http://www.w3.org/2000/xmlns/",o="http://www.w3.org/2000/svg",a=/url\(["']?(.+?)["']?\)/,s={woff2:"font/woff2",woff:"font/woff",otf:"application/x-font-opentype",ttf:"application/x-font-ttf",eot:"application/vnd.ms-fontobject",sfnt:"application/font-sfnt",svg:"image/svg+xml"},l=function(e){return e instanceof HTMLElement||e instanceof SVGElement},c=function(e){if(!l(e))throw new Error("an HTMLElement or SVGElement is required; got "+e)},u=function(e){return new Promise(function(t,n){l(e)?t(e):n(new Error("an HTMLElement or SVGElement is required; got "+e))})},d=function(e,t,n){var i=e.viewBox&&e.viewBox.baseVal&&e.viewBox.baseVal[n]||null!==t.getAttribute(n)&&!t.getAttribute(n).match(/%$/)&&parseInt(t.getAttribute(n))||e.getBoundingClientRect()[n]||parseInt(t.style[n])||parseInt(window.getComputedStyle(e).getPropertyValue(n));return null==i||isNaN(parseFloat(i))?0:i},h=function(e){for(var t=window.atob(e.split(",")[1]),n=e.split(",")[0].split(":")[1].split(";")[0],i=new ArrayBuffer(t.length),r=new Uint8Array(i),o=0;o *")).forEach(function(e){e.setAttributeNS(r,"xmlns","svg"===e.tagName?o:"http://www.w3.org/1999/xhtml")}),!x)return function(e,t){var n=t||{},i=n.selectorRemap,r=n.modifyStyle,o=n.fonts,l=n.excludeUnusedCss,c=n.modifyCss||function(e,t){return(i?i(e):e)+"{"+(r?r(t):t)+"}\n"},u=[],d=void 0===o,h=o||[];return(f||(f=Array.from(document.styleSheets).map(function(e){try{return{rules:e.cssRules,href:e.href}}catch(t){return console.warn("Stylesheet could not be loaded: "+e.href,t),{}}}))).forEach(function(t){var n=t.rules,i=t.href;n&&Array.from(n).forEach(function(t){if(void 0!==t.style)if(function(e,t){if(t)try{return e.querySelector(t)||e.parentNode&&e.parentNode.querySelector(t)}catch(n){console.warn('Invalid CSS selector "'+t+'"',n)}}(e,t.selectorText))u.push(c(t.selectorText,t.style.cssText));else if(d&&t.cssText.match(/^@font-face/)){var n=function(e,t){var n=e.cssText.match(a),i=n&&n[1]||"";if(i&&!i.match(/^data:/)&&"about:blank"!==i){var r,o,l=i.startsWith("../")?t+"/../"+i:i.startsWith("./")?t+"/."+i:i;return{text:e.cssText,format:(r=l,o=Object.keys(s).filter(function(e){return r.indexOf("."+e)>0}).map(function(e){return s[e]}),o?o[0]:(console.error("Unknown font format for "+r+". Fonts may not be working correctly."),"application/octet-stream")),url:l}}}(t,i);n&&h.push(n)}else l||u.push(t.cssText)})}),function(e){return Promise.all(e.map(function(e){return new Promise(function(t,n){if(p[e.url])return t(p[e.url]);var i=new XMLHttpRequest;i.addEventListener("load",function(){var n=function(e){for(var t="",n=new Uint8Array(e),i=0;i";var r=document.createElement("defs");r.appendChild(t),i.insertBefore(r,i.firstChild);var o=document.createElement("div");o.appendChild(i);var a=o.innerHTML.replace(/NS\d+:href/gi,'xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href');if("function"!=typeof n)return{src:a,width:c,height:h};n(a,c,h)});var b=document.createElement("div");b.appendChild(i);var S=b.innerHTML;if("function"!=typeof n)return{src:S,width:c,height:h};n(S,c,h)})},i.svgAsDataUri=function(e,t,n){return c(e),i.prepareSvg(e,t).then(function(e){var t=e.width,i=e.height,r="data:image/svg+xml;base64,"+window.btoa(decodeURIComponent(encodeURIComponent(']>'+e.src).replace(/%([0-9A-F]{2})/g,function(e,t){var n=String.fromCharCode("0x"+t);return"%"===n?"%25":n})));return"function"==typeof n&&n(r,t,i),r})},i.svgAsPngUri=function(e,t,n){c(e);var r=t||{},o=r.encoderType,a=void 0===o?"image/png":o,s=r.encoderOptions,l=void 0===s?.8:s,u=r.canvg,d=function(e){var t=e.src,i=e.width,r=e.height,o=document.createElement("canvas"),s=o.getContext("2d"),c=window.devicePixelRatio||1;o.width=i*c,o.height=r*c,o.style.width=o.width+"px",o.style.height=o.height+"px",s.setTransform(c,0,0,c,0,0),u?u(o,t):s.drawImage(t,0,0);var d=void 0;try{d=o.toDataURL(a,l)}catch(h){if("undefined"!=typeof SecurityError&&h instanceof SecurityError||"SecurityError"===h.name)return void console.error("Rendered SVG images cannot be downloaded in this browser.");throw h}return"function"==typeof n&&n(d,o.width,o.height),Promise.resolve(d)};return u?i.prepareSvg(e,t).then(d):i.svgAsDataUri(e,t).then(function(e){return new Promise(function(t,n){var i=new Image;i.onload=function(){return t(d({src:i,width:i.width,height:i.height}))},i.onerror=function(){n("There was an error loading the data URI as an image on the following SVG\n"+window.atob(e.slice(26))+"Open the following link to see browser's diagnosis\n"+e)},i.src=e})})},i.download=function(e,t,n){if(navigator.msSaveOrOpenBlob)navigator.msSaveOrOpenBlob(h(t),e);else{var i=document.createElement("a");if("download"in i){i.download=e,i.style.display="none",document.body.appendChild(i);try{var r=h(t),o=URL.createObjectURL(r);i.href=o,i.onclick=function(){return requestAnimationFrame(function(){return URL.revokeObjectURL(o)})}}catch(a){console.error(a),console.warn("Error while getting object URL. Falling back to string URL."),i.href=t}i.click(),document.body.removeChild(i)}else n&&n.popup&&(n.popup.document.title=e,n.popup.location.replace(t))}},i.saveSvg=function(e,t,n){var r=m();return u(e).then(function(e){return i.svgAsDataUri(e,n||{})}).then(function(e){return i.download(t,e,r)})},i.saveSvgAsPng=function(e,t,n){var r=m();return u(e).then(function(e){return i.svgAsPngUri(e,n||{})}).then(function(e){return i.download(t,e,r)})}}()},5042:function(e,t,n){var i=n(25523),r=Object.prototype.hasOwnProperty,o="undefined"!=typeof Map;function a(){this._array=[],this._set=o?new Map:Object.create(null)}a.fromArray=function(e,t){for(var n=new a,i=0,r=e.length;i=0)return t}else{var n=i.toSetString(e);if(r.call(this._set,n))return this._set[n]}throw new Error('"'+e+'" is not in the set.')},a.prototype.at=function(e){if(e>=0&&e>>=5)>0&&(t|=32),n+=i.encode(t)}while(r>0);return n},t.decode=function(e,t,n){var r,o,a,s,l=e.length,c=0,u=0;do{if(t>=l)throw new Error("Expected more digits in base 64 VLQ value.");if(-1===(o=i.decode(e.charCodeAt(t++))))throw new Error("Invalid base64 digit: "+e.charAt(t-1));r=!!(32&o),c+=(o&=31)<>1,1==(1&a)?-s:s),n.rest=t}},7698:function(e,t){var n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");t.encode=function(e){if(0<=e&&e(r=(t=this._last).generatedLine)||o==r&&n.generatedColumn>=t.generatedColumn||i.compareByGeneratedPositionsInflated(t,n)<=0?(this._last=e,this._array.push(e)):(this._sorted=!1,this._array.push(e))},r.prototype.toArray=function(){return this._sorted||(this._array.sort(i.compareByGeneratedPositionsInflated),this._sorted=!0),this._array},t.H=r},30673:function(e,t,n){var i=n(78619),r=n(25523),o=n(5042).I,a=n(66306).H;function s(e){e||(e={}),this._file=r.getArg(e,"file",null),this._sourceRoot=r.getArg(e,"sourceRoot",null),this._skipValidation=r.getArg(e,"skipValidation",!1),this._sources=new o,this._names=new o,this._mappings=new a,this._sourcesContents=null}s.prototype._version=3,s.fromSourceMap=function(e){var t=e.sourceRoot,n=new s({file:e.file,sourceRoot:t});return e.eachMapping(function(e){var i={generated:{line:e.generatedLine,column:e.generatedColumn}};null!=e.source&&(i.source=e.source,null!=t&&(i.source=r.relative(t,i.source)),i.original={line:e.originalLine,column:e.originalColumn},null!=e.name&&(i.name=e.name)),n.addMapping(i)}),e.sources.forEach(function(i){var o=i;null!==t&&(o=r.relative(t,i)),n._sources.has(o)||n._sources.add(o);var a=e.sourceContentFor(i);null!=a&&n.setSourceContent(i,a)}),n},s.prototype.addMapping=function(e){var t=r.getArg(e,"generated"),n=r.getArg(e,"original",null),i=r.getArg(e,"source",null),o=r.getArg(e,"name",null);this._skipValidation||this._validateMapping(t,n,i,o),null!=i&&(i=String(i),this._sources.has(i)||this._sources.add(i)),null!=o&&(o=String(o),this._names.has(o)||this._names.add(o)),this._mappings.add({generatedLine:t.line,generatedColumn:t.column,originalLine:null!=n&&n.line,originalColumn:null!=n&&n.column,source:i,name:o})},s.prototype.setSourceContent=function(e,t){var n=e;null!=this._sourceRoot&&(n=r.relative(this._sourceRoot,n)),null!=t?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[r.toSetString(n)]=t):this._sourcesContents&&(delete this._sourcesContents[r.toSetString(n)],0===Object.keys(this._sourcesContents).length&&(this._sourcesContents=null))},s.prototype.applySourceMap=function(e,t,n){var i=t;if(null==t){if(null==e.file)throw new Error('SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map\'s "file" property. Both were omitted.');i=e.file}var a=this._sourceRoot;null!=a&&(i=r.relative(a,i));var s=new o,l=new o;this._mappings.unsortedForEach(function(t){if(t.source===i&&null!=t.originalLine){var o=e.originalPositionFor({line:t.originalLine,column:t.originalColumn});null!=o.source&&(t.source=o.source,null!=n&&(t.source=r.join(n,t.source)),null!=a&&(t.source=r.relative(a,t.source)),t.originalLine=o.line,t.originalColumn=o.column,null!=o.name&&(t.name=o.name))}var c=t.source;null==c||s.has(c)||s.add(c);var u=t.name;null==u||l.has(u)||l.add(u)},this),this._sources=s,this._names=l,e.sources.forEach(function(t){var i=e.sourceContentFor(t);null!=i&&(null!=n&&(t=r.join(n,t)),null!=a&&(t=r.relative(a,t)),this.setSourceContent(t,i))},this)},s.prototype._validateMapping=function(e,t,n,i){if(t&&"number"!=typeof t.line&&"number"!=typeof t.column)throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if((!(e&&"line"in e&&"column"in e&&e.line>0&&e.column>=0)||t||n||i)&&!(e&&"line"in e&&"column"in e&&t&&"line"in t&&"column"in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&n))throw new Error("Invalid mapping: "+JSON.stringify({generated:e,source:n,original:t,name:i}))},s.prototype._serializeMappings=function(){for(var e,t,n,o,a=0,s=1,l=0,c=0,u=0,d=0,h="",p=this._mappings.toArray(),f=0,m=p.length;f0){if(!r.compareByGeneratedPositionsInflated(t,p[f-1]))continue;e+=","}e+=i.encode(t.generatedColumn-a),a=t.generatedColumn,null!=t.source&&(o=this._sources.indexOf(t.source),e+=i.encode(o-d),d=o,e+=i.encode(t.originalLine-1-c),c=t.originalLine-1,e+=i.encode(t.originalColumn-l),l=t.originalColumn,null!=t.name&&(n=this._names.indexOf(t.name),e+=i.encode(n-u),u=n)),h+=e}return h},s.prototype._generateSourcesContent=function(e,t){return e.map(function(e){if(!this._sourcesContents)return null;null!=t&&(e=r.relative(t,e));var n=r.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,n)?this._sourcesContents[n]:null},this)},s.prototype.toJSON=function(){var e={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return null!=this._file&&(e.file=this._file),null!=this._sourceRoot&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e},s.prototype.toString=function(){return JSON.stringify(this.toJSON())},t.h=s},25523:function(e,t){t.getArg=function(e,t,n){if(t in e)return e[t];if(3===arguments.length)return n;throw new Error('"'+t+'" is a required argument.')};var n=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,i=/^data:.+\,.+$/;function r(e){var t=e.match(n);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}function o(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}function a(e){var n=e,i=r(e);if(i){if(!i.path)return e;n=i.path}for(var a,s=t.isAbsolute(n),l=n.split(/\/+/),c=0,u=l.length-1;u>=0;u--)"."===(a=l[u])?l.splice(u,1):".."===a?c++:c>0&&(""===a?(l.splice(u+1,c),c=0):(l.splice(u,2),c--));return""===(n=l.join("/"))&&(n=s?"/":"."),i?(i.path=n,o(i)):n}function s(e,t){""===e&&(e="."),""===t&&(t=".");var n=r(t),s=r(e);if(s&&(e=s.path||"/"),n&&!n.scheme)return s&&(n.scheme=s.scheme),o(n);if(n||t.match(i))return t;if(s&&!s.host&&!s.path)return s.host=t,o(s);var l="/"===t.charAt(0)?t:a(e.replace(/\/+$/,"")+"/"+t);return s?(s.path=l,o(s)):l}t.urlParse=r,t.urlGenerate=o,t.normalize=a,t.join=s,t.isAbsolute=function(e){return"/"===e.charAt(0)||n.test(e)},t.relative=function(e,t){""===e&&(e="."),e=e.replace(/\/$/,"");for(var n=0;0!==t.indexOf(e+"/");){var i=e.lastIndexOf("/");if(i<0)return t;if((e=e.slice(0,i)).match(/^([^\/]+:\/)?\/*$/))return t;++n}return Array(n+1).join("../")+t.substr(e.length+1)};var l=!("__proto__"in Object.create(null));function c(e){return e}function u(e){if(!e)return!1;var t=e.length;if(t<9)return!1;if(95!==e.charCodeAt(t-1)||95!==e.charCodeAt(t-2)||111!==e.charCodeAt(t-3)||116!==e.charCodeAt(t-4)||111!==e.charCodeAt(t-5)||114!==e.charCodeAt(t-6)||112!==e.charCodeAt(t-7)||95!==e.charCodeAt(t-8)||95!==e.charCodeAt(t-9))return!1;for(var n=t-10;n>=0;n--)if(36!==e.charCodeAt(n))return!1;return!0}function d(e,t){return e===t?0:null===e?1:null===t?-1:e>t?1:-1}t.toSetString=l?c:function(e){return u(e)?"$"+e:e},t.fromSetString=l?c:function(e){return u(e)?e.slice(1):e},t.compareByOriginalPositions=function(e,t,n){var i=d(e.source,t.source);return 0!==i||0!=(i=e.originalLine-t.originalLine)||0!=(i=e.originalColumn-t.originalColumn)||n||0!=(i=e.generatedColumn-t.generatedColumn)||0!=(i=e.generatedLine-t.generatedLine)?i:d(e.name,t.name)},t.compareByGeneratedPositionsDeflated=function(e,t,n){var i=e.generatedLine-t.generatedLine;return 0!==i||0!=(i=e.generatedColumn-t.generatedColumn)||n||0!==(i=d(e.source,t.source))||0!=(i=e.originalLine-t.originalLine)||0!=(i=e.originalColumn-t.originalColumn)?i:d(e.name,t.name)},t.compareByGeneratedPositionsInflated=function(e,t){var n=e.generatedLine-t.generatedLine;return 0!==n||0!=(n=e.generatedColumn-t.generatedColumn)||0!==(n=d(e.source,t.source))||0!=(n=e.originalLine-t.originalLine)||0!=(n=e.originalColumn-t.originalColumn)?n:d(e.name,t.name)},t.parseSourceMapInput=function(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))},t.computeSourceURL=function(e,t,n){if(t=t||"",e&&("/"!==e[e.length-1]&&"/"!==t[0]&&(e+="/"),t=e+t),n){var i=r(n);if(!i)throw new Error("sourceMapURL could not be parsed");if(i.path){var l=i.path.lastIndexOf("/");l>=0&&(i.path=i.path.substring(0,l+1))}t=s(o(i),t)}return a(t)}},52402:function(e){e.exports=function(e){"use strict";var t=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"];function n(e,t){var n=e[0],i=e[1],r=e[2],o=e[3];i=((i+=((r=((r+=((o=((o+=((n=((n+=(i&r|~i&o)+t[0]-680876936|0)<<7|n>>>25)+i|0)&i|~n&r)+t[1]-389564586|0)<<12|o>>>20)+n|0)&n|~o&i)+t[2]+606105819|0)<<17|r>>>15)+o|0)&o|~r&n)+t[3]-1044525330|0)<<22|i>>>10)+r|0,i=((i+=((r=((r+=((o=((o+=((n=((n+=(i&r|~i&o)+t[4]-176418897|0)<<7|n>>>25)+i|0)&i|~n&r)+t[5]+1200080426|0)<<12|o>>>20)+n|0)&n|~o&i)+t[6]-1473231341|0)<<17|r>>>15)+o|0)&o|~r&n)+t[7]-45705983|0)<<22|i>>>10)+r|0,i=((i+=((r=((r+=((o=((o+=((n=((n+=(i&r|~i&o)+t[8]+1770035416|0)<<7|n>>>25)+i|0)&i|~n&r)+t[9]-1958414417|0)<<12|o>>>20)+n|0)&n|~o&i)+t[10]-42063|0)<<17|r>>>15)+o|0)&o|~r&n)+t[11]-1990404162|0)<<22|i>>>10)+r|0,i=((i+=((r=((r+=((o=((o+=((n=((n+=(i&r|~i&o)+t[12]+1804603682|0)<<7|n>>>25)+i|0)&i|~n&r)+t[13]-40341101|0)<<12|o>>>20)+n|0)&n|~o&i)+t[14]-1502002290|0)<<17|r>>>15)+o|0)&o|~r&n)+t[15]+1236535329|0)<<22|i>>>10)+r|0,i=((i+=((r=((r+=((o=((o+=((n=((n+=(i&o|r&~o)+t[1]-165796510|0)<<5|n>>>27)+i|0)&r|i&~r)+t[6]-1069501632|0)<<9|o>>>23)+n|0)&i|n&~i)+t[11]+643717713|0)<<14|r>>>18)+o|0)&n|o&~n)+t[0]-373897302|0)<<20|i>>>12)+r|0,i=((i+=((r=((r+=((o=((o+=((n=((n+=(i&o|r&~o)+t[5]-701558691|0)<<5|n>>>27)+i|0)&r|i&~r)+t[10]+38016083|0)<<9|o>>>23)+n|0)&i|n&~i)+t[15]-660478335|0)<<14|r>>>18)+o|0)&n|o&~n)+t[4]-405537848|0)<<20|i>>>12)+r|0,i=((i+=((r=((r+=((o=((o+=((n=((n+=(i&o|r&~o)+t[9]+568446438|0)<<5|n>>>27)+i|0)&r|i&~r)+t[14]-1019803690|0)<<9|o>>>23)+n|0)&i|n&~i)+t[3]-187363961|0)<<14|r>>>18)+o|0)&n|o&~n)+t[8]+1163531501|0)<<20|i>>>12)+r|0,i=((i+=((r=((r+=((o=((o+=((n=((n+=(i&o|r&~o)+t[13]-1444681467|0)<<5|n>>>27)+i|0)&r|i&~r)+t[2]-51403784|0)<<9|o>>>23)+n|0)&i|n&~i)+t[7]+1735328473|0)<<14|r>>>18)+o|0)&n|o&~n)+t[12]-1926607734|0)<<20|i>>>12)+r|0,i=((i+=((r=((r+=((o=((o+=((n=((n+=(i^r^o)+t[5]-378558|0)<<4|n>>>28)+i|0)^i^r)+t[8]-2022574463|0)<<11|o>>>21)+n|0)^n^i)+t[11]+1839030562|0)<<16|r>>>16)+o|0)^o^n)+t[14]-35309556|0)<<23|i>>>9)+r|0,i=((i+=((r=((r+=((o=((o+=((n=((n+=(i^r^o)+t[1]-1530992060|0)<<4|n>>>28)+i|0)^i^r)+t[4]+1272893353|0)<<11|o>>>21)+n|0)^n^i)+t[7]-155497632|0)<<16|r>>>16)+o|0)^o^n)+t[10]-1094730640|0)<<23|i>>>9)+r|0,i=((i+=((r=((r+=((o=((o+=((n=((n+=(i^r^o)+t[13]+681279174|0)<<4|n>>>28)+i|0)^i^r)+t[0]-358537222|0)<<11|o>>>21)+n|0)^n^i)+t[3]-722521979|0)<<16|r>>>16)+o|0)^o^n)+t[6]+76029189|0)<<23|i>>>9)+r|0,i=((i+=((r=((r+=((o=((o+=((n=((n+=(i^r^o)+t[9]-640364487|0)<<4|n>>>28)+i|0)^i^r)+t[12]-421815835|0)<<11|o>>>21)+n|0)^n^i)+t[15]+530742520|0)<<16|r>>>16)+o|0)^o^n)+t[2]-995338651|0)<<23|i>>>9)+r|0,i=((i+=((o=((o+=(i^((n=((n+=(r^(i|~o))+t[0]-198630844|0)<<6|n>>>26)+i|0)|~r))+t[7]+1126891415|0)<<10|o>>>22)+n|0)^((r=((r+=(n^(o|~i))+t[14]-1416354905|0)<<15|r>>>17)+o|0)|~n))+t[5]-57434055|0)<<21|i>>>11)+r|0,i=((i+=((o=((o+=(i^((n=((n+=(r^(i|~o))+t[12]+1700485571|0)<<6|n>>>26)+i|0)|~r))+t[3]-1894986606|0)<<10|o>>>22)+n|0)^((r=((r+=(n^(o|~i))+t[10]-1051523|0)<<15|r>>>17)+o|0)|~n))+t[1]-2054922799|0)<<21|i>>>11)+r|0,i=((i+=((o=((o+=(i^((n=((n+=(r^(i|~o))+t[8]+1873313359|0)<<6|n>>>26)+i|0)|~r))+t[15]-30611744|0)<<10|o>>>22)+n|0)^((r=((r+=(n^(o|~i))+t[6]-1560198380|0)<<15|r>>>17)+o|0)|~n))+t[13]+1309151649|0)<<21|i>>>11)+r|0,i=((i+=((o=((o+=(i^((n=((n+=(r^(i|~o))+t[4]-145523070|0)<<6|n>>>26)+i|0)|~r))+t[11]-1120210379|0)<<10|o>>>22)+n|0)^((r=((r+=(n^(o|~i))+t[2]+718787259|0)<<15|r>>>17)+o|0)|~n))+t[9]-343485551|0)<<21|i>>>11)+r|0,e[0]=n+e[0]|0,e[1]=i+e[1]|0,e[2]=r+e[2]|0,e[3]=o+e[3]|0}function i(e){var t,n=[];for(t=0;t<64;t+=4)n[t>>2]=e.charCodeAt(t)+(e.charCodeAt(t+1)<<8)+(e.charCodeAt(t+2)<<16)+(e.charCodeAt(t+3)<<24);return n}function r(e){var t,n=[];for(t=0;t<64;t+=4)n[t>>2]=e[t]+(e[t+1]<<8)+(e[t+2]<<16)+(e[t+3]<<24);return n}function o(e){var t,r,o,a,s,l,c=e.length,u=[1732584193,-271733879,-1732584194,271733878];for(t=64;t<=c;t+=64)n(u,i(e.substring(t-64,t)));for(r=(e=e.substring(t-64)).length,o=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],t=0;t>2]|=e.charCodeAt(t)<<(t%4<<3);if(o[t>>2]|=128<<(t%4<<3),t>55)for(n(u,o),t=0;t<16;t+=1)o[t]=0;return a=(a=8*c).toString(16).match(/(.*?)(.{0,8})$/),s=parseInt(a[2],16),l=parseInt(a[1],16)||0,o[14]=s,o[15]=l,n(u,o),u}function a(e){var n,i="";for(n=0;n<4;n+=1)i+=t[e>>8*n+4&15]+t[e>>8*n&15];return i}function s(e){var t;for(t=0;tc?new ArrayBuffer(0):(i=c-l,r=new ArrayBuffer(i),o=new Uint8Array(r),a=new Uint8Array(this,l,i),o.set(a),r)}}(),u.prototype.append=function(e){return this.appendBinary(l(e)),this},u.prototype.appendBinary=function(e){this._buff+=e,this._length+=e.length;var t,r=this._buff.length;for(t=64;t<=r;t+=64)n(this._hash,i(this._buff.substring(t-64,t)));return this._buff=this._buff.substring(t-64),this},u.prototype.end=function(e){var t,n,i=this._buff,r=i.length,o=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(t=0;t>2]|=i.charCodeAt(t)<<(t%4<<3);return this._finish(o,r),n=s(this._hash),e&&(n=c(n)),this.reset(),n},u.prototype.reset=function(){return this._buff="",this._length=0,this._hash=[1732584193,-271733879,-1732584194,271733878],this},u.prototype.getState=function(){return{buff:this._buff,length:this._length,hash:this._hash.slice()}},u.prototype.setState=function(e){return this._buff=e.buff,this._length=e.length,this._hash=e.hash,this},u.prototype.destroy=function(){delete this._hash,delete this._buff,delete this._length},u.prototype._finish=function(e,t){var i,r,o,a=t;if(e[a>>2]|=128<<(a%4<<3),a>55)for(n(this._hash,e),a=0;a<16;a+=1)e[a]=0;i=(i=8*this._length).toString(16).match(/(.*?)(.{0,8})$/),r=parseInt(i[2],16),o=parseInt(i[1],16)||0,e[14]=r,e[15]=o,n(this._hash,e)},u.hash=function(e,t){return u.hashBinary(l(e),t)},u.hashBinary=function(e,t){var n=s(o(e));return t?c(n):n},(u.ArrayBuffer=function(){this.reset()}).prototype.append=function(e){var t,i,o,a,s=(i=this._buff.buffer,o=e,!0,(a=new Uint8Array(i.byteLength+o.byteLength)).set(new Uint8Array(i)),a.set(new Uint8Array(o),i.byteLength),a),l=s.length;for(this._length+=e.byteLength,t=64;t<=l;t+=64)n(this._hash,r(s.subarray(t-64,t)));return this._buff=t-64>2]|=i[t]<<(t%4<<3);return this._finish(o,r),n=s(this._hash),e&&(n=c(n)),this.reset(),n},u.ArrayBuffer.prototype.reset=function(){return this._buff=new Uint8Array(0),this._length=0,this._hash=[1732584193,-271733879,-1732584194,271733878],this},u.ArrayBuffer.prototype.getState=function(){var e=u.prototype.getState.call(this);return e.buff=String.fromCharCode.apply(null,new Uint8Array(e.buff)),e},u.ArrayBuffer.prototype.setState=function(e){return e.buff=function(e,t){var n,i=e.length,r=new ArrayBuffer(i),o=new Uint8Array(r);for(n=0;n>2]|=e[t]<<(t%4<<3);if(o[t>>2]|=128<<(t%4<<3),t>55)for(n(u,o),t=0;t<16;t+=1)o[t]=0;return a=(a=8*c).toString(16).match(/(.*?)(.{0,8})$/),s=parseInt(a[2],16),l=parseInt(a[1],16)||0,o[14]=s,o[15]=l,n(u,o),u}(new Uint8Array(e)));return t?c(i):i},u}()},3397:function(e){window,e.exports=function(e){var t={};function n(i){if(t[i])return t[i].exports;var r=t[i]={i:i,l:!1,exports:{}};return e[i].call(r.exports,r,r.exports,n),r.l=!0,r.exports}return n.m=e,n.c=t,n.d=function(e,t,i){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(i,r,(function(t){return e[t]}).bind(null,r));return i},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=0)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AttachAddon=void 0;var i=function(){function e(e,t){this._disposables=[],this._socket=e,this._socket.binaryType="arraybuffer",this._bidirectional=!t||!1!==t.bidirectional}return e.prototype.activate=function(e){var t=this;this._disposables.push(r(this._socket,"message",function(t){var n=t.data;e.write("string"==typeof n?n:new Uint8Array(n))})),this._bidirectional&&(this._disposables.push(e.onData(function(e){return t._sendData(e)})),this._disposables.push(e.onBinary(function(e){return t._sendBinary(e)}))),this._disposables.push(r(this._socket,"close",function(){return t.dispose()})),this._disposables.push(r(this._socket,"error",function(){return t.dispose()}))},e.prototype.dispose=function(){this._disposables.forEach(function(e){return e.dispose()})},e.prototype._sendData=function(e){1===this._socket.readyState&&this._socket.send(e)},e.prototype._sendBinary=function(e){if(1===this._socket.readyState){for(var t=new Uint8Array(e.length),n=0;ne;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()},t.prototype._createAccessibilityTreeNode=function(){var e=document.createElement("div");return e.setAttribute("role","listitem"),e.tabIndex=-1,this._refreshRowDimensions(e),e},t.prototype._onTab=function(e){for(var t=0;t0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,"\n"===e&&(this._liveRegionLineCount++,21===this._liveRegionLineCount&&(this._liveRegion.textContent+=o.tooMuchOutput)),a.isMac&&this._liveRegion.textContent&&this._liveRegion.textContent.length>0&&!this._liveRegion.parentNode&&setTimeout(function(){t._accessibilityTreeRoot.appendChild(t._liveRegion)},0))},t.prototype._clearLiveRegion=function(){this._liveRegion.textContent="",this._liveRegionLineCount=0,a.isMac&&d.removeElementFromParent(this._liveRegion)},t.prototype._onKey=function(e){this._clearLiveRegion(),this._charsToConsume.push(e)},t.prototype._refreshRows=function(e,t){this._renderRowsDebouncer.refresh(e,t,this._terminal.rows)},t.prototype._renderRows=function(e,t){for(var n=this._terminal.buffer,i=n.lines.length.toString(),r=e;r<=t;r++){var o=n.translateBufferLineToString(n.ydisp+r,!0),a=(n.ydisp+r+1).toString(),s=this._rowElements[r];s&&(0===o.length?s.innerText="\xa0":s.textContent=o,s.setAttribute("aria-posinset",a),s.setAttribute("aria-setsize",i))}this._announceCharacters()},t.prototype._refreshRowsDimensions=function(){if(this._renderService.dimensions.actualCellHeight){this._rowElements.length!==this._terminal.rows&&this._onResize(this._terminal.rows);for(var e=0;e>>0}}(n=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var r=t.rgba>>16&255,o=t.rgba>>8&255,a=e.rgba>>24&255,s=e.rgba>>16&255,l=e.rgba>>8&255,c=a+Math.round(((t.rgba>>24&255)-a)*i),u=s+Math.round((r-s)*i),d=l+Math.round((o-l)*i);return{css:n.toCss(c,u,d),rgba:n.toRgba(c,u,d)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,n){var i=o.ensureContrastRatio(e.rgba,t.rgba,n);if(i)return o.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=o.toChannels(t);return{css:n.toCss(i[0],i[1],i[2]),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),r=o.toChannels(e.rgba),a=r[0],s=r[1],l=r[2];return{css:n.toCss(a,s,l,i),rgba:n.toRgba(a,s,l,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error("css.toColor: Unsupported css format")},function(e){function t(e,t,n){var i=e/255,r=t/255,o=n/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(r<=.03928?r/12.92:Math.pow((r+.055)/1.055,2.4))+.0722*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(r=t.rgb||(t.rgb={})),function(e){function t(e,t,n){for(var i=e>>24&255,o=e>>16&255,a=e>>8&255,l=t>>24&255,c=t>>16&255,u=t>>8&255,d=s(r.relativeLuminance2(l,u,c),r.relativeLuminance2(i,o,a));d0||c>0||u>0);)l-=Math.max(0,Math.ceil(.1*l)),c-=Math.max(0,Math.ceil(.1*c)),u-=Math.max(0,Math.ceil(.1*u)),d=s(r.relativeLuminance2(l,u,c),r.relativeLuminance2(i,o,a));return(l<<24|c<<16|u<<8|255)>>>0}function i(e,t,n){for(var i=e>>24&255,o=e>>16&255,a=e>>8&255,l=t>>24&255,c=t>>16&255,u=t>>8&255,d=s(r.relativeLuminance2(l,u,c),r.relativeLuminance2(i,o,a));d>>0}e.ensureContrastRatio=function(e,n,o){var a=r.relativeLuminance(e>>8),l=r.relativeLuminance(n>>8);if(s(a,l)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:n.toCss(e,t,i),rgba:n.toRgba(e,t,i)}}}(o=t.rgba||(t.rgba={})),t.toPaddedHex=a,t.contrastRatio=s},7239:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.ColorContrastCache=void 0;var n=function(){function e(){this._color={},this._rgba={}}return e.prototype.clear=function(){this._color={},this._rgba={}},e.prototype.setCss=function(e,t,n){this._rgba[e]||(this._rgba[e]={}),this._rgba[e][t]=n},e.prototype.getCss=function(e,t){return this._rgba[e]?this._rgba[e][t]:void 0},e.prototype.setColor=function(e,t,n){this._color[e]||(this._color[e]={}),this._color[e][t]=n},e.prototype.getColor=function(e,t){return this._color[e]?this._color[e][t]:void 0},e}();t.ColorContrastCache=n},5680:function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.ColorManager=t.DEFAULT_ANSI_COLORS=void 0;var i=n(4774),r=n(7239),o=i.css.toColor("#ffffff"),a=i.css.toColor("#000000"),s=i.css.toColor("#ffffff"),l=i.css.toColor("#000000"),c={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117};t.DEFAULT_ANSI_COLORS=Object.freeze(function(){for(var e=[i.css.toColor("#2e3436"),i.css.toColor("#cc0000"),i.css.toColor("#4e9a06"),i.css.toColor("#c4a000"),i.css.toColor("#3465a4"),i.css.toColor("#75507b"),i.css.toColor("#06989a"),i.css.toColor("#d3d7cf"),i.css.toColor("#555753"),i.css.toColor("#ef2929"),i.css.toColor("#8ae234"),i.css.toColor("#fce94f"),i.css.toColor("#729fcf"),i.css.toColor("#ad7fa8"),i.css.toColor("#34e2e2"),i.css.toColor("#eeeeec")],t=[0,95,135,175,215,255],n=0;n<216;n++){var r=t[n/36%6|0],o=t[n/6%6|0],a=t[n%6];e.push({css:i.channels.toCss(r,o,a),rgba:i.channels.toRgba(r,o,a)})}for(n=0;n<24;n++){var s=8+10*n;e.push({css:i.channels.toCss(s,s,s),rgba:i.channels.toRgba(s,s,s)})}return e}());var u=function(){function e(e,n){this.allowTransparency=n;var u=e.createElement("canvas");u.width=1,u.height=1;var d=u.getContext("2d");if(!d)throw new Error("Could not get rendering context");this._ctx=d,this._ctx.globalCompositeOperation="copy",this._litmusColor=this._ctx.createLinearGradient(0,0,1,1),this._contrastCache=new r.ColorContrastCache,this.colors={foreground:o,background:a,cursor:s,cursorAccent:l,selectionTransparent:c,selectionOpaque:i.color.blend(a,c),ansi:t.DEFAULT_ANSI_COLORS.slice(),contrastCache:this._contrastCache}}return e.prototype.onOptionsChange=function(e){"minimumContrastRatio"===e&&this._contrastCache.clear()},e.prototype.setTheme=function(e){void 0===e&&(e={}),this.colors.foreground=this._parseColor(e.foreground,o),this.colors.background=this._parseColor(e.background,a),this.colors.cursor=this._parseColor(e.cursor,s,!0),this.colors.cursorAccent=this._parseColor(e.cursorAccent,l,!0),this.colors.selectionTransparent=this._parseColor(e.selection,c,!0),this.colors.selectionOpaque=i.color.blend(this.colors.background,this.colors.selectionTransparent),i.color.isOpaque(this.colors.selectionTransparent)&&(this.colors.selectionTransparent=i.color.opacity(this.colors.selectionTransparent,.3)),this.colors.ansi[0]=this._parseColor(e.black,t.DEFAULT_ANSI_COLORS[0]),this.colors.ansi[1]=this._parseColor(e.red,t.DEFAULT_ANSI_COLORS[1]),this.colors.ansi[2]=this._parseColor(e.green,t.DEFAULT_ANSI_COLORS[2]),this.colors.ansi[3]=this._parseColor(e.yellow,t.DEFAULT_ANSI_COLORS[3]),this.colors.ansi[4]=this._parseColor(e.blue,t.DEFAULT_ANSI_COLORS[4]),this.colors.ansi[5]=this._parseColor(e.magenta,t.DEFAULT_ANSI_COLORS[5]),this.colors.ansi[6]=this._parseColor(e.cyan,t.DEFAULT_ANSI_COLORS[6]),this.colors.ansi[7]=this._parseColor(e.white,t.DEFAULT_ANSI_COLORS[7]),this.colors.ansi[8]=this._parseColor(e.brightBlack,t.DEFAULT_ANSI_COLORS[8]),this.colors.ansi[9]=this._parseColor(e.brightRed,t.DEFAULT_ANSI_COLORS[9]),this.colors.ansi[10]=this._parseColor(e.brightGreen,t.DEFAULT_ANSI_COLORS[10]),this.colors.ansi[11]=this._parseColor(e.brightYellow,t.DEFAULT_ANSI_COLORS[11]),this.colors.ansi[12]=this._parseColor(e.brightBlue,t.DEFAULT_ANSI_COLORS[12]),this.colors.ansi[13]=this._parseColor(e.brightMagenta,t.DEFAULT_ANSI_COLORS[13]),this.colors.ansi[14]=this._parseColor(e.brightCyan,t.DEFAULT_ANSI_COLORS[14]),this.colors.ansi[15]=this._parseColor(e.brightWhite,t.DEFAULT_ANSI_COLORS[15]),this._contrastCache.clear()},e.prototype._parseColor=function(e,t,n){if(void 0===n&&(n=this.allowTransparency),void 0===e)return t;if(this._ctx.fillStyle=this._litmusColor,this._ctx.fillStyle=e,"string"!=typeof this._ctx.fillStyle)return console.warn("Color: "+e+" is invalid using fallback "+t.css),t;this._ctx.fillRect(0,0,1,1);var r=this._ctx.getImageData(0,0,1,1).data;if(255!==r[3]){if(!n)return console.warn("Color: "+e+" is using transparency, but allowTransparency is false. Using fallback "+t.css+"."),t;var o=this._ctx.fillStyle.substring(5,this._ctx.fillStyle.length-1).split(",").map(function(e){return Number(e)}),a=o[0],s=o[1],l=o[2],c=Math.round(255*o[3]);return{rgba:i.channels.toRgba(a,s,l,c),css:e}}return{css:this._ctx.fillStyle,rgba:i.channels.toRgba(r[0],r[1],r[2],r[3])}},e}();t.ColorManager=u},9631:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.removeElementFromParent=void 0,t.removeElementFromParent=function(){for(var e,t=[],n=0;n=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},r=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseZone=t.Linkifier=void 0;var o=n(8460),a=n(2585),s=function(){function e(e,t,n){this._bufferService=e,this._logService=t,this._unicodeService=n,this._linkMatchers=[],this._nextLinkMatcherId=0,this._onShowLinkUnderline=new o.EventEmitter,this._onHideLinkUnderline=new o.EventEmitter,this._onLinkTooltip=new o.EventEmitter,this._rowsToLinkify={start:void 0,end:void 0}}return Object.defineProperty(e.prototype,"onShowLinkUnderline",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onHideLinkUnderline",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onLinkTooltip",{get:function(){return this._onLinkTooltip.event},enumerable:!1,configurable:!0}),e.prototype.attachToDom=function(e,t){this._element=e,this._mouseZoneManager=t},e.prototype.linkifyRows=function(t,n){var i=this;this._mouseZoneManager&&(void 0===this._rowsToLinkify.start||void 0===this._rowsToLinkify.end?(this._rowsToLinkify.start=t,this._rowsToLinkify.end=n):(this._rowsToLinkify.start=Math.min(this._rowsToLinkify.start,t),this._rowsToLinkify.end=Math.max(this._rowsToLinkify.end,n)),this._mouseZoneManager.clearAll(t,n),this._rowsTimeoutId&&clearTimeout(this._rowsTimeoutId),this._rowsTimeoutId=setTimeout(function(){return i._linkifyRows()},e._timeBeforeLatency))},e.prototype._linkifyRows=function(){this._rowsTimeoutId=void 0;var e=this._bufferService.buffer;if(void 0!==this._rowsToLinkify.start&&void 0!==this._rowsToLinkify.end){var t=e.ydisp+this._rowsToLinkify.start;if(!(t>=e.lines.length)){for(var n=e.ydisp+Math.min(this._rowsToLinkify.end,this._bufferService.rows)+1,i=Math.ceil(2e3/this._bufferService.cols),r=this._bufferService.buffer.iterator(!1,t,n,i,i);r.hasNext();)for(var o=r.next(),a=0;a=0;t--)if(e.priority<=this._linkMatchers[t].priority)return void this._linkMatchers.splice(t+1,0,e);this._linkMatchers.splice(0,0,e)}else this._linkMatchers.push(e)},e.prototype.deregisterLinkMatcher=function(e){for(var t=0;t>9&511:void 0;n.validationCallback?n.validationCallback(s,function(e){r._rowsTimeoutId||e&&r._addLink(c[1],c[0]-r._bufferService.buffer.ydisp,s,n,h)}):l._addLink(c[1],c[0]-l._bufferService.buffer.ydisp,s,n,h)},l=this;null!==(i=o.exec(t))&&"break"!==s(););},e.prototype._addLink=function(e,t,n,i,r){var o=this;if(this._mouseZoneManager&&this._element){var a=this._unicodeService.getStringCellWidth(n),s=e%this._bufferService.cols,c=t+Math.floor(e/this._bufferService.cols),u=(s+a)%this._bufferService.cols,d=c+Math.floor((s+a)/this._bufferService.cols);0===u&&(u=this._bufferService.cols,d--),this._mouseZoneManager.add(new l(s+1,c+1,u+1,d+1,function(e){if(i.handler)return i.handler(e,n);var t=window.open();t?(t.opener=null,t.location.href=n):console.warn("Opening link blocked as opener could not be cleared")},function(){o._onShowLinkUnderline.fire(o._createLinkHoverEvent(s,c,u,d,r)),o._element.classList.add("xterm-cursor-pointer")},function(e){o._onLinkTooltip.fire(o._createLinkHoverEvent(s,c,u,d,r)),i.hoverTooltipCallback&&i.hoverTooltipCallback(e,n,{start:{x:s,y:c},end:{x:u,y:d}})},function(){o._onHideLinkUnderline.fire(o._createLinkHoverEvent(s,c,u,d,r)),o._element.classList.remove("xterm-cursor-pointer"),i.hoverLeaveCallback&&i.hoverLeaveCallback()},function(e){return!i.willLinkActivate||i.willLinkActivate(e,n)}))}},e.prototype._createLinkHoverEvent=function(e,t,n,i,r){return{x1:e,y1:t,x2:n,y2:i,cols:this._bufferService.cols,fg:r}},e._timeBeforeLatency=200,e=i([r(0,a.IBufferService),r(1,a.ILogService),r(2,a.IUnicodeService)],e)}();t.Linkifier=s;var l=function(e,t,n,i,r,o,a,s,l){this.x1=e,this.y1=t,this.x2=n,this.y2=i,this.clickCallback=r,this.hoverCallback=o,this.tooltipCallback=a,this.leaveCallback=s,this.willLinkActivate=l};t.MouseZone=l},6465:function(e,t,n){var i,r=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),o=this&&this.__decorate||function(e,t,n,i){var r,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},a=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Linkifier2=void 0;var s=n(2585),l=n(8460),c=n(844),u=n(3656),d=function(e){function t(t){var n=e.call(this)||this;return n._bufferService=t,n._linkProviders=[],n._linkCacheDisposables=[],n._isMouseOut=!0,n._activeLine=-1,n._onShowLinkUnderline=n.register(new l.EventEmitter),n._onHideLinkUnderline=n.register(new l.EventEmitter),n.register(c.getDisposeArrayDisposable(n._linkCacheDisposables)),n}return r(t,e),Object.defineProperty(t.prototype,"currentLink",{get:function(){return this._currentLink},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onShowLinkUnderline",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onHideLinkUnderline",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),t.prototype.registerLinkProvider=function(e){var t=this;return this._linkProviders.push(e),{dispose:function(){var n=t._linkProviders.indexOf(e);-1!==n&&t._linkProviders.splice(n,1)}}},t.prototype.attachToDom=function(e,t,n){var i=this;this._element=e,this._mouseService=t,this._renderService=n,this.register(u.addDisposableDomListener(this._element,"mouseleave",function(){i._isMouseOut=!0,i._clearCurrentLink()})),this.register(u.addDisposableDomListener(this._element,"mousemove",this._onMouseMove.bind(this))),this.register(u.addDisposableDomListener(this._element,"click",this._onClick.bind(this)))},t.prototype._onMouseMove=function(e){if(this._lastMouseEvent=e,this._element&&this._mouseService){var t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(t){this._isMouseOut=!1;for(var n=e.composedPath(),i=0;ie?this._bufferService.cols:a.link.range.end.x,l=a.link.range.start.y=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,c.disposeArray(this._linkCacheDisposables))},t.prototype._handleNewLink=function(e){var t=this;if(this._element&&this._lastMouseEvent&&this._mouseService){var n=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);n&&this._linkAtPosition(e.link,n)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:void 0===e.link.decorations||e.link.decorations.underline,pointerCursor:void 0===e.link.decorations||e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:function(){var e,n;return null===(n=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===n?void 0:n.decorations.pointerCursor},set:function(e){var n,i;(null===(n=t._currentLink)||void 0===n?void 0:n.state)&&t._currentLink.state.decorations.pointerCursor!==e&&(t._currentLink.state.decorations.pointerCursor=e,t._currentLink.state.isHovered&&(null===(i=t._element)||void 0===i||i.classList.toggle("xterm-cursor-pointer",e)))}},underline:{get:function(){var e,n;return null===(n=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===n?void 0:n.decorations.underline},set:function(n){var i,r,o;(null===(i=t._currentLink)||void 0===i?void 0:i.state)&&(null===(o=null===(r=t._currentLink)||void 0===r?void 0:r.state)||void 0===o?void 0:o.decorations.underline)!==n&&(t._currentLink.state.decorations.underline=n,t._currentLink.state.isHovered&&t._fireUnderlineEvent(e.link,n))}}}),this._renderService&&this._linkCacheDisposables.push(this._renderService.onRenderedBufferChange(function(e){t._clearCurrentLink(0===e.start?0:e.start+1+t._bufferService.buffer.ydisp,e.end+1+t._bufferService.buffer.ydisp)})))}},t.prototype._linkHover=function(e,t,n){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add("xterm-cursor-pointer")),t.hover&&t.hover(n,t.text)},t.prototype._fireUnderlineEvent=function(e,t){var n=e.range,i=this._bufferService.buffer.ydisp,r=this._createLinkUnderlineEvent(n.start.x-1,n.start.y-i-1,n.end.x,n.end.y-i-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(r)},t.prototype._linkLeave=function(e,t,n){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove("xterm-cursor-pointer")),t.leave&&t.leave(n,t.text)},t.prototype._linkAtPosition=function(e,t){var n=e.range.start.yt.y;return(e.range.start.y===e.range.end.y&&e.range.start.x<=t.x&&e.range.end.x>=t.x||n&&e.range.end.x>=t.x||i&&e.range.start.x<=t.x||n&&i)&&e.range.start.y<=t.y&&e.range.end.y>=t.y},t.prototype._positionFromMouseEvent=function(e,t,n){var i=n.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(i)return{x:i[0],y:i[1]+this._bufferService.buffer.ydisp}},t.prototype._createLinkUnderlineEvent=function(e,t,n,i,r){return{x1:e,y1:t,x2:n,y2:i,cols:this._bufferService.cols,fg:r}},o([a(0,s.IBufferService)],t)}(c.Disposable);t.Linkifier2=d},9042:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.tooMuchOutput=t.promptLabel=void 0,t.promptLabel="Terminal input",t.tooMuchOutput="Too much output to announce, navigate to rows manually to read"},6954:function(e,t,n){var i,r=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),o=this&&this.__decorate||function(e,t,n,i){var r,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},a=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseZoneManager=void 0;var s=n(844),l=n(3656),c=n(4725),u=n(2585),d=function(e){function t(t,n,i,r,o,a){var s=e.call(this)||this;return s._element=t,s._screenElement=n,s._bufferService=i,s._mouseService=r,s._selectionService=o,s._optionsService=a,s._zones=[],s._areZonesActive=!1,s._lastHoverCoords=[void 0,void 0],s._initialSelectionLength=0,s.register(l.addDisposableDomListener(s._element,"mousedown",function(e){return s._onMouseDown(e)})),s._mouseMoveListener=function(e){return s._onMouseMove(e)},s._mouseLeaveListener=function(e){return s._onMouseLeave(e)},s._clickListener=function(e){return s._onClick(e)},s}return r(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._deactivate()},t.prototype.add=function(e){this._zones.push(e),1===this._zones.length&&this._activate()},t.prototype.clearAll=function(e,t){if(0!==this._zones.length){e&&t||(e=0,t=this._bufferService.rows-1);for(var n=0;ne&&i.y1<=t+1||i.y2>e&&i.y2<=t+1||i.y1t+1)&&(this._currentZone&&this._currentZone===i&&(this._currentZone.leaveCallback(),this._currentZone=void 0),this._zones.splice(n--,1))}0===this._zones.length&&this._deactivate()}},t.prototype._activate=function(){this._areZonesActive||(this._areZonesActive=!0,this._element.addEventListener("mousemove",this._mouseMoveListener),this._element.addEventListener("mouseleave",this._mouseLeaveListener),this._element.addEventListener("click",this._clickListener))},t.prototype._deactivate=function(){this._areZonesActive&&(this._areZonesActive=!1,this._element.removeEventListener("mousemove",this._mouseMoveListener),this._element.removeEventListener("mouseleave",this._mouseLeaveListener),this._element.removeEventListener("click",this._clickListener))},t.prototype._onMouseMove=function(e){this._lastHoverCoords[0]===e.pageX&&this._lastHoverCoords[1]===e.pageY||(this._onHover(e),this._lastHoverCoords=[e.pageX,e.pageY])},t.prototype._onHover=function(e){var t=this,n=this._findZoneEventAt(e);n!==this._currentZone&&(this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout)),n&&(this._currentZone=n,n.hoverCallback&&n.hoverCallback(e),this._tooltipTimeout=window.setTimeout(function(){return t._onTooltip(e)},this._optionsService.options.linkTooltipHoverDuration)))},t.prototype._onTooltip=function(e){this._tooltipTimeout=void 0;var t=this._findZoneEventAt(e);null==t||t.tooltipCallback(e)},t.prototype._onMouseDown=function(e){if(this._initialSelectionLength=this._getSelectionLength(),this._areZonesActive){var t=this._findZoneEventAt(e);(null==t?void 0:t.willLinkActivate(e))&&(e.preventDefault(),e.stopImmediatePropagation())}},t.prototype._onMouseLeave=function(e){this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout))},t.prototype._onClick=function(e){var t=this._findZoneEventAt(e),n=this._getSelectionLength();t&&n===this._initialSelectionLength&&(t.clickCallback(e),e.preventDefault(),e.stopImmediatePropagation())},t.prototype._getSelectionLength=function(){var e=this._selectionService.selectionText;return e?e.length:0},t.prototype._findZoneEventAt=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows);if(t)for(var n=t[0],i=t[1],r=0;r=o.x1&&n=o.x1||i===o.y2&&no.y1&&i4)&&t._coreMouseService.triggerMouseEvent({col:r.x-33,row:r.y-33,button:n,action:i,ctrl:e.ctrlKey,alt:e.altKey,shift:e.shiftKey})}var r={mouseup:null,wheel:null,mousedrag:null,mousemove:null},o=function(t){return i(t),t.buttons||(e._document.removeEventListener("mouseup",r.mouseup),r.mousedrag&&e._document.removeEventListener("mousemove",r.mousedrag)),e.cancel(t)},a=function(t){return i(t),t.preventDefault(),e.cancel(t)},s=function(e){e.buttons&&i(e)},c=function(e){e.buttons||i(e)};this.register(this._coreMouseService.onProtocolChange(function(t){t?("debug"===e.optionsService.options.logLevel&&e._logService.debug("Binding to mouse events:",e._coreMouseService.explainEvents(t)),e.element.classList.add("enable-mouse-events"),e._selectionService.disable()):(e._logService.debug("Unbinding from mouse events."),e.element.classList.remove("enable-mouse-events"),e._selectionService.enable()),8&t?r.mousemove||(n.addEventListener("mousemove",c),r.mousemove=c):(n.removeEventListener("mousemove",r.mousemove),r.mousemove=null),16&t?r.wheel||(n.addEventListener("wheel",a,{passive:!1}),r.wheel=a):(n.removeEventListener("wheel",r.wheel),r.wheel=null),2&t?r.mouseup||(r.mouseup=o):(e._document.removeEventListener("mouseup",r.mouseup),r.mouseup=null),4&t?r.mousedrag||(r.mousedrag=s):(e._document.removeEventListener("mousemove",r.mousedrag),r.mousedrag=null)})),this._coreMouseService.activeProtocol=this._coreMouseService.activeProtocol,this.register(f.addDisposableDomListener(n,"mousedown",function(t){if(t.preventDefault(),e.focus(),e._coreMouseService.areMouseEventsActive&&!e._selectionService.shouldForceSelection(t))return i(t),r.mouseup&&e._document.addEventListener("mouseup",r.mouseup),r.mousedrag&&e._document.addEventListener("mousemove",r.mousedrag),e.cancel(t)})),this.register(f.addDisposableDomListener(n,"wheel",function(t){if(r.wheel);else if(!e.buffer.hasScrollback){var n=e.viewport.getLinesScrolled(t);if(0===n)return;for(var i=l.C0.ESC+(e._coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(t.deltaY<0?"A":"B"),o="",a=0;a47)},t.prototype._keyUp=function(e){this._customKeyEventHandler&&!1===this._customKeyEventHandler(e)||(function(e){return 16===e.keyCode||17===e.keyCode||18===e.keyCode}(e)||this.focus(),this.updateCursorStyle(e))},t.prototype._keyPress=function(e){var t;if(this._keyDownHandled)return!1;if(this._customKeyEventHandler&&!1===this._customKeyEventHandler(e))return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(null==e.which)t=e.keyCode;else{if(0===e.which||0===e.charCode)return!1;t=e.which}return!(!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)||(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this._coreService.triggerDataEvent(t,!0),0))},t.prototype.bell=function(){var e;this._soundBell()&&(null===(e=this._soundService)||void 0===e||e.playBellSound()),this._onBell.fire()},t.prototype.resize=function(t,n){t!==this.cols||n!==this.rows?e.prototype.resize.call(this,t,n):this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure()},t.prototype._afterResize=function(e,t){var n,i;null===(n=this._charSizeService)||void 0===n||n.measure(),null===(i=this.viewport)||void 0===i||i.syncScrollArea(!0)},t.prototype.clear=function(){if(0!==this.buffer.ybase||0!==this.buffer.y){this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(var e=1;e=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},a=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Viewport=void 0;var s=n(844),l=n(3656),c=n(4725),u=n(2585),d=function(e){function t(t,n,i,r,o,a,s){var c=e.call(this)||this;return c._scrollLines=t,c._viewportElement=n,c._scrollArea=i,c._bufferService=r,c._optionsService=o,c._charSizeService=a,c._renderService=s,c.scrollBarWidth=0,c._currentRowHeight=0,c._lastRecordedBufferLength=0,c._lastRecordedViewportHeight=0,c._lastRecordedBufferHeight=0,c._lastTouchY=0,c._lastScrollTop=0,c._wheelPartialScroll=0,c._refreshAnimationFrame=null,c._ignoreNextScrollEvent=!1,c.scrollBarWidth=c._viewportElement.offsetWidth-c._scrollArea.offsetWidth||15,c.register(l.addDisposableDomListener(c._viewportElement,"scroll",c._onScroll.bind(c))),setTimeout(function(){return c.syncScrollArea()},0),c}return r(t,e),t.prototype.onThemeChange=function(e){this._viewportElement.style.backgroundColor=e.background.css},t.prototype._refresh=function(e){var t=this;if(e)return this._innerRefresh(),void(null!==this._refreshAnimationFrame&&cancelAnimationFrame(this._refreshAnimationFrame));null===this._refreshAnimationFrame&&(this._refreshAnimationFrame=requestAnimationFrame(function(){return t._innerRefresh()}))},t.prototype._innerRefresh=function(){if(this._charSizeService.height>0){this._currentRowHeight=this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio,this._lastRecordedViewportHeight=this._viewportElement.offsetHeight;var e=Math.round(this._currentRowHeight*this._lastRecordedBufferLength)+(this._lastRecordedViewportHeight-this._renderService.dimensions.canvasHeight);this._lastRecordedBufferHeight!==e&&(this._lastRecordedBufferHeight=e,this._scrollArea.style.height=this._lastRecordedBufferHeight+"px")}var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._viewportElement.scrollTop!==t&&(this._ignoreNextScrollEvent=!0,this._viewportElement.scrollTop=t),this._refreshAnimationFrame=null},t.prototype.syncScrollArea=function(e){if(void 0===e&&(e=!1),this._lastRecordedBufferLength!==this._bufferService.buffer.lines.length)return this._lastRecordedBufferLength=this._bufferService.buffer.lines.length,void this._refresh(e);this._lastRecordedViewportHeight===this._renderService.dimensions.canvasHeight&&this._lastScrollTop===this._bufferService.buffer.ydisp*this._currentRowHeight&&this._lastScrollTop===this._viewportElement.scrollTop&&this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio===this._currentRowHeight||this._refresh(e)},t.prototype._onScroll=function(e){if(this._lastScrollTop=this._viewportElement.scrollTop,this._viewportElement.offsetParent){if(this._ignoreNextScrollEvent)return this._ignoreNextScrollEvent=!1,void this._scrollLines(0);var t=Math.round(this._lastScrollTop/this._currentRowHeight)-this._bufferService.buffer.ydisp;this._scrollLines(t)}},t.prototype._bubbleScroll=function(e,t){return!(t<0&&0!==this._viewportElement.scrollTop||t>0&&this._viewportElement.scrollTop+this._lastRecordedViewportHeight0?1:-1),this._wheelPartialScroll%=1):e.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(t*=this._bufferService.rows),t},t.prototype._applyScrollModifier=function(e,t){var n=this._optionsService.options.fastScrollModifier;return"alt"===n&&t.altKey||"ctrl"===n&&t.ctrlKey||"shift"===n&&t.shiftKey?e*this._optionsService.options.fastScrollSensitivity*this._optionsService.options.scrollSensitivity:e*this._optionsService.options.scrollSensitivity},t.prototype.onTouchStart=function(e){this._lastTouchY=e.touches[0].pageY},t.prototype.onTouchMove=function(e){var t=this._lastTouchY-e.touches[0].pageY;return this._lastTouchY=e.touches[0].pageY,0!==t&&(this._viewportElement.scrollTop+=t,this._bubbleScroll(e,t))},o([a(3,u.IBufferService),a(4,u.IOptionsService),a(5,c.ICharSizeService),a(6,c.IRenderService)],t)}(s.Disposable);t.Viewport=d},2950:function(e,t,n){var i=this&&this.__decorate||function(e,t,n,i){var r,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},r=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CompositionHelper=void 0;var o=n(4725),a=n(2585),s=function(){function e(e,t,n,i,r,o){this._textarea=e,this._compositionView=t,this._bufferService=n,this._optionsService=i,this._coreService=r,this._renderService=o,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=""}return Object.defineProperty(e.prototype,"isComposing",{get:function(){return this._isComposing},enumerable:!1,configurable:!0}),e.prototype.compositionstart=function(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent="",this._dataAlreadySent="",this._compositionView.classList.add("active")},e.prototype.compositionupdate=function(e){var t=this;this._compositionView.textContent=e.data,this.updateCompositionElements(),setTimeout(function(){t._compositionPosition.end=t._textarea.value.length},0)},e.prototype.compositionend=function(){this._finalizeComposition(!0)},e.prototype.keydown=function(e){if(this._isComposing||this._isSendingComposition){if(229===e.keyCode)return!1;if(16===e.keyCode||17===e.keyCode||18===e.keyCode)return!1;this._finalizeComposition(!1)}return 229!==e.keyCode||(this._handleAnyTextareaChanges(),!1)},e.prototype._finalizeComposition=function(e){var t=this;if(this._compositionView.classList.remove("active"),this._isComposing=!1,e){var n={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout(function(){var e;t._isSendingComposition&&(t._isSendingComposition=!1,n.start+=t._dataAlreadySent.length,(e=t._isComposing?t._textarea.value.substring(n.start,n.end):t._textarea.value.substring(n.start)).length>0&&t._coreService.triggerDataEvent(e,!0))},0)}else{this._isSendingComposition=!1;var i=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(i,!0)}},e.prototype._handleAnyTextareaChanges=function(){var e=this,t=this._textarea.value;setTimeout(function(){if(!e._isComposing){var n=e._textarea.value.replace(t,"");n.length>0&&(e._dataAlreadySent=n,e._coreService.triggerDataEvent(n,!0))}},0)},e.prototype.updateCompositionElements=function(e){var t=this;if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){var n=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),i=this._renderService.dimensions.actualCellHeight,r=this._bufferService.buffer.y*this._renderService.dimensions.actualCellHeight,o=n*this._renderService.dimensions.actualCellWidth;this._compositionView.style.left=o+"px",this._compositionView.style.top=r+"px",this._compositionView.style.height=i+"px",this._compositionView.style.lineHeight=i+"px",this._compositionView.style.fontFamily=this._optionsService.options.fontFamily,this._compositionView.style.fontSize=this._optionsService.options.fontSize+"px";var a=this._compositionView.getBoundingClientRect();this._textarea.style.left=o+"px",this._textarea.style.top=r+"px",this._textarea.style.width=Math.max(a.width,1)+"px",this._textarea.style.height=Math.max(a.height,1)+"px",this._textarea.style.lineHeight=a.height+"px"}e||setTimeout(function(){return t.updateCompositionElements(!0)},0)}},i([r(2,a.IBufferService),r(3,a.IOptionsService),r(4,a.ICoreService),r(5,o.IRenderService)],e)}();t.CompositionHelper=s},9806:function(e,t){function n(e,t){var n=t.getBoundingClientRect();return[e.clientX-n.left,e.clientY-n.top]}Object.defineProperty(t,"__esModule",{value:!0}),t.getRawByteCoords=t.getCoords=t.getCoordsRelativeToElement=void 0,t.getCoordsRelativeToElement=n,t.getCoords=function(e,t,i,r,o,a,s,l){if(o){var c=n(e,t);if(c)return c[0]=Math.ceil((c[0]+(l?a/2:0))/a),c[1]=Math.ceil(c[1]/s),c[0]=Math.min(Math.max(c[0],1),i+(l?1:0)),c[1]=Math.min(Math.max(c[1],1),r),c}},t.getRawByteCoords=function(e){if(e)return{x:e[0]+32,y:e[1]+32}}},9504:function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.moveToCellSequence=void 0;var i=n(2584);function r(e,t,n,i){var r=e-o(n,e),s=t-o(n,t);return c(Math.abs(r-s)-function(e,t,n){for(var i=0,r=e-o(n,e),s=t-o(n,t),l=0;l=0&&tt?"A":"B"}function s(e,t,n,i,r,o){for(var a=e,s=t,l="";a!==n||s!==i;)a+=r?1:-1,r&&a>o.cols-1?(l+=o.buffer.translateBufferLineToString(s,!1,e,a),a=0,e=0,s++):!r&&a<0&&(l+=o.buffer.translateBufferLineToString(s,!1,0,e+1),e=a=o.cols-1,s--);return l+o.buffer.translateBufferLineToString(s,!1,e,a)}function l(e,t){return i.C0.ESC+(t?"O":"[")+e}function c(e,t){e=Math.floor(e);for(var n="",i=0;i0?i-o(a,i):t;var h=i,p=function(e,t,n,i,a,s){var l;return l=r(n,i,a,s).length>0?i-o(a,i):t,e=n&&le?"D":"C",c(Math.abs(u-e),l(a,i));a=d>t?"D":"C";var h=Math.abs(d-t);return c(function(e,t){return t.cols-e}(d>t?e:u,n)+(h-1)*n.cols+1+((d>t?u:e)-1),l(a,i))}},244:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.AddonManager=void 0;var n=function(){function e(){this._addons=[]}return e.prototype.dispose=function(){for(var e=this._addons.length-1;e>=0;e--)this._addons[e].instance.dispose()},e.prototype.loadAddon=function(e,t){var n=this,i={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(i),t.dispose=function(){return n._wrappedAddonDispose(i)},t.activate(e)},e.prototype._wrappedAddonDispose=function(e){if(!e.isDisposed){for(var t=-1,n=0;n>24&255,p>>16&255,p>>8&255),rgba:p};return this._colors.contrastCache.setColor(e.bg,e.fg,f),f}this._colors.contrastCache.setColor(e.bg,e.fg,null)}},e.prototype._resolveBackgroundRgba=function(e,t,n){switch(e){case 16777216:case 33554432:return this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return n?this._colors.foreground.rgba:this._colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,n,i){switch(e){case 16777216:case 33554432:return this._optionsService.options.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return n?this._colors.background.rgba:this._colors.foreground.rgba}},e}();t.BaseRenderLayer=u},2512:function(e,t,n){var i,r=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),o=this&&this.__decorate||function(e,t,n,i){var r,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},a=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CursorRenderLayer=void 0;var s=n(1546),l=n(511),c=n(2585),u=n(4725),d=600,h=function(e){function t(t,n,i,r,o,a,s,c,u){var d=e.call(this,t,"cursor",n,!0,i,r,a,s)||this;return d._onRequestRedraw=o,d._coreService=c,d._coreBrowserService=u,d._cell=new l.CellData,d._state={x:0,y:0,isFocused:!1,style:"",width:0},d._cursorRenderers={bar:d._renderBarCursor.bind(d),block:d._renderBlockCursor.bind(d),underline:d._renderUnderlineCursor.bind(d)},d}return r(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state={x:0,y:0,isFocused:!1,style:"",width:0}},t.prototype.reset=function(){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this._cursorBlinkStateManager=void 0,this.onOptionsChanged())},t.prototype.onBlur=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onFocus=function(){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume():this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onOptionsChanged=function(){var e,t=this;this._optionsService.options.cursorBlink?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new p(this._coreBrowserService.isFocused,function(){t._render(!0)})):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onCursorMove=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype.onGridChanged=function(e,t){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(!1):this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype._render=function(e){if(this._coreService.isCursorInitialized&&!this._coreService.isCursorHidden){var t=this._bufferService.buffer.ybase+this._bufferService.buffer.y,n=t-this._bufferService.buffer.ydisp;if(n<0||n>=this._bufferService.rows)this._clearCursor();else{var i=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1);if(this._bufferService.buffer.lines.get(t).loadCell(i,this._cell),void 0!==this._cell.content){if(!this._coreBrowserService.isFocused){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var r=this._optionsService.options.cursorStyle;return r&&"block"!==r?this._cursorRenderers[r](i,n,this._cell):this._renderBlurCursor(i,n,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=n,this._state.isFocused=!1,this._state.style=r,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===i&&this._state.y===n&&this._state.isFocused===this._coreBrowserService.isFocused&&this._state.style===this._optionsService.options.cursorStyle&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[this._optionsService.options.cursorStyle||"block"](i,n,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=n,this._state.isFocused=!1,this._state.style=this._optionsService.options.cursorStyle,this._state.width=this._cell.getWidth()}else this._clearCursor()}}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:"",width:0})},t.prototype._renderBarCursor=function(e,t,n){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,t,this._optionsService.options.cursorWidth),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,n){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,t,n.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(n,e,t),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,n){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,t),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,n){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,t,n.getWidth(),1),this._ctx.restore()},o([a(5,c.IBufferService),a(6,c.IOptionsService),a(7,c.ICoreService),a(8,u.ICoreBrowserService)],t)}(s.BaseRenderLayer);t.CursorRenderLayer=h;var p=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,e&&this._restartInterval()}return Object.defineProperty(e.prototype,"isPaused",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame(function(){e._renderCallback(),e._animationFrame=void 0})))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=d),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout(function(){if(t._animationTimeRestarted){var e=d-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame(function(){t._renderCallback(),t._animationFrame=void 0}),t._blinkInterval=window.setInterval(function(){if(t._animationTimeRestarted){var e=d-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame(function(){t._renderCallback(),t._animationFrame=void 0})},d)},e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation()},e}()},3700:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.GridCache=void 0;var n=function(){function e(){this.cache=[]}return e.prototype.resize=function(e,t){for(var n=0;n=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},a=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.LinkRenderLayer=void 0;var s=n(1546),l=n(8803),c=n(2040),u=n(2585),d=function(e){function t(t,n,i,r,o,a,s,l){var c=e.call(this,t,"link",n,!0,i,r,s,l)||this;return o.onShowLinkUnderline(function(e){return c._onShowLinkUnderline(e)}),o.onHideLinkUnderline(function(e){return c._onHideLinkUnderline(e)}),a.onShowLinkUnderline(function(e){return c._onShowLinkUnderline(e)}),a.onHideLinkUnderline(function(e){return c._onHideLinkUnderline(e)}),c}return r(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state=void 0},t.prototype.reset=function(){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(this._ctx.fillStyle=e.fg===l.INVERTED_DEFAULT_COLOR?this._colors.background.css:e.fg&&c.is256Color(e.fg)?this._colors.ansi[e.fg].css:this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},a=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Renderer=void 0;var s=n(9596),l=n(4149),c=n(2512),u=n(5098),d=n(844),h=n(4725),p=n(2585),f=n(1420),m=n(8460),g=1,v=function(e){function t(t,n,i,r,o,a,d,h){var p=e.call(this)||this;return p._colors=t,p._screenElement=n,p._bufferService=a,p._charSizeService=d,p._optionsService=h,p._id=g++,p._onRequestRedraw=new m.EventEmitter,p._renderLayers=[o.createInstance(s.TextRenderLayer,p._screenElement,0,p._colors,p._optionsService.options.allowTransparency,p._id),o.createInstance(l.SelectionRenderLayer,p._screenElement,1,p._colors,p._id),o.createInstance(u.LinkRenderLayer,p._screenElement,2,p._colors,p._id,i,r),o.createInstance(c.CursorRenderLayer,p._screenElement,3,p._colors,p._id,p._onRequestRedraw)],p.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},p._devicePixelRatio=window.devicePixelRatio,p._updateDimensions(),p.onOptionsChanged(),p}return r(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){for(var t=0,n=this._renderLayers;t=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},a=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionRenderLayer=void 0;var s=n(1546),l=n(2585),c=function(e){function t(t,n,i,r,o,a){var s=e.call(this,t,"selection",n,!0,i,r,o,a)||this;return s._clearState(),s}return r(t,e),t.prototype._clearState=function(){this._state={start:void 0,end:void 0,columnSelectMode:void 0,ydisp:void 0}},t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._clearState()},t.prototype.reset=function(){this._state.start&&this._state.end&&(this._clearState(),this._clearAll())},t.prototype.onSelectionChanged=function(e,t,n){if(this._didStateChange(e,t,n,this._bufferService.buffer.ydisp))if(this._clearAll(),e&&t){var i=e[1]-this._bufferService.buffer.ydisp,r=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),a=Math.min(r,this._bufferService.rows-1);if(o>=this._bufferService.rows||a<0)this._state.ydisp=this._bufferService.buffer.ydisp;else{if(this._ctx.fillStyle=this._colors.selectionTransparent.css,n){var s=e[0];this._fillCells(s,o,t[0]-s,a-o+1)}else{this._fillCells(s=i===o?e[0]:0,o,(o===r?t[0]:this._bufferService.cols)-s,1);var l=Math.max(a-o-1,0);this._fillCells(0,o+1,this._bufferService.cols,l),o!==a&&this._fillCells(0,a,r===a?t[0]:this._bufferService.cols,1)}this._state.start=[e[0],e[1]],this._state.end=[t[0],t[1]],this._state.columnSelectMode=n,this._state.ydisp=this._bufferService.buffer.ydisp}}else this._clearState()},t.prototype._didStateChange=function(e,t,n,i){return!this._areCoordinatesEqual(e,this._state.start)||!this._areCoordinatesEqual(t,this._state.end)||n!==this._state.columnSelectMode||i!==this._state.ydisp},t.prototype._areCoordinatesEqual=function(e,t){return!(!e||!t)&&e[0]===t[0]&&e[1]===t[1]},o([a(4,l.IBufferService),a(5,l.IOptionsService)],t)}(s.BaseRenderLayer);t.SelectionRenderLayer=c},9596:function(e,t,n){var i,r=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),o=this&&this.__decorate||function(e,t,n,i){var r,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},a=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.TextRenderLayer=void 0;var s=n(3700),l=n(1546),c=n(3734),u=n(643),d=n(511),h=n(2585),p=n(4725),f=n(4269),m=function(e){function t(t,n,i,r,o,a,l,c){var u=e.call(this,t,"text",n,r,i,o,a,l)||this;return u._characterJoinerService=c,u._characterWidth=0,u._characterFont="",u._characterOverlapCache={},u._workCell=new d.CellData,u._state=new s.GridCache,u}return r(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t);var n=this._getFont(!1,!1);this._characterWidth===t.scaledCharWidth&&this._characterFont===n||(this._characterWidth=t.scaledCharWidth,this._characterFont=n,this._characterOverlapCache={}),this._state.clear(),this._state.resize(this._bufferService.cols,this._bufferService.rows)},t.prototype.reset=function(){this._state.clear(),this._clearAll()},t.prototype._forEachCell=function(e,t,n){for(var i=e;i<=t;i++)for(var r=i+this._bufferService.buffer.ydisp,o=this._bufferService.buffer.lines.get(r),a=this._characterJoinerService.getJoinedCharacters(r),s=0;s0&&s===a[0][0]){c=!0;var h=a.shift();l=new f.JoinedCellData(this._workCell,o.translateToString(!0,h[0],h[1]),h[1]-h[0]),d=h[1]-1}!c&&this._isOverlapping(l)&&dthis._characterWidth;return this._ctx.restore(),this._characterOverlapCache[t]=n,n},o([a(5,h.IBufferService),a(6,h.IOptionsService),a(7,p.ICharacterJoinerService)],t)}(l.BaseRenderLayer);t.TextRenderLayer=m},9616:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.BaseCharAtlas=void 0;var n=function(){function e(){this._didWarmUp=!1}return e.prototype.dispose=function(){},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){},e.prototype.beginFrame=function(){},e}();t.BaseCharAtlas=n},1420:function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=n(2040),r=n(1906),o=[];t.acquireCharAtlas=function(e,t,n,a,s){for(var l=i.generateConfig(a,s,e,n),c=0;c=0){if(i.configEquals(d.config,l))return d.atlas;1===d.ownedBy.length?(d.atlas.dispose(),o.splice(c,1)):d.ownedBy.splice(u,1);break}}for(c=0;c>>24,r=t.rgba>>>16&255,o=t.rgba>>>8&255,a=0;a=this.capacity)this._unlinkNode(n=this._head),delete this._map[n.key],n.key=e,n.value=t,this._map[e]=n;else{var i=this._nodePool;i.length>0?((n=i.pop()).key=e,n.value=t):n={prev:null,next:null,key:e,value:t},this._map[e]=n,this.size++}this._appendNode(n)},e}();t.LRUMap=n},1296:function(e,t,n){var i,r=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),o=this&&this.__decorate||function(e,t,n,i){var r,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},a=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DomRenderer=void 0;var s=n(3787),l=n(8803),c=n(844),u=n(4725),d=n(2585),h=n(8460),p=n(4774),f=n(9631),m="xterm-dom-renderer-owner-",g="xterm-fg-",v="xterm-bg-",y="xterm-focus",_=1,b=function(e){function t(t,n,i,r,o,a,l,c,u,d){var h=e.call(this)||this;return h._colors=t,h._element=n,h._screenElement=i,h._viewportElement=r,h._linkifier=o,h._linkifier2=a,h._charSizeService=c,h._optionsService=u,h._bufferService=d,h._terminalClass=_++,h._rowElements=[],h._rowContainer=document.createElement("div"),h._rowContainer.classList.add("xterm-rows"),h._rowContainer.style.lineHeight="normal",h._rowContainer.setAttribute("aria-hidden","true"),h._refreshRowElements(h._bufferService.cols,h._bufferService.rows),h._selectionContainer=document.createElement("div"),h._selectionContainer.classList.add("xterm-selection"),h._selectionContainer.setAttribute("aria-hidden","true"),h.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},h._updateDimensions(),h._injectCss(),h._rowFactory=l.createInstance(s.DomRendererRowFactory,document,h._colors),h._element.classList.add(m+h._terminalClass),h._screenElement.appendChild(h._rowContainer),h._screenElement.appendChild(h._selectionContainer),h._linkifier.onShowLinkUnderline(function(e){return h._onLinkHover(e)}),h._linkifier.onHideLinkUnderline(function(e){return h._onLinkLeave(e)}),h._linkifier2.onShowLinkUnderline(function(e){return h._onLinkHover(e)}),h._linkifier2.onHideLinkUnderline(function(e){return h._onLinkLeave(e)}),h}return r(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return(new h.EventEmitter).event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._element.classList.remove(m+this._terminalClass),f.removeElementFromParent(this._rowContainer,this._selectionContainer,this._themeStyleElement,this._dimensionsStyleElement),e.prototype.dispose.call(this)},t.prototype._updateDimensions=function(){this.dimensions.scaledCharWidth=this._charSizeService.width*window.devicePixelRatio,this.dimensions.scaledCharHeight=Math.ceil(this._charSizeService.height*window.devicePixelRatio),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._optionsService.options.letterSpacing),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._optionsService.options.lineHeight),this.dimensions.scaledCharLeft=0,this.dimensions.scaledCharTop=0,this.dimensions.scaledCanvasWidth=this.dimensions.scaledCellWidth*this._bufferService.cols,this.dimensions.scaledCanvasHeight=this.dimensions.scaledCellHeight*this._bufferService.rows,this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/window.devicePixelRatio),this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/window.devicePixelRatio),this.dimensions.actualCellWidth=this.dimensions.canvasWidth/this._bufferService.cols,this.dimensions.actualCellHeight=this.dimensions.canvasHeight/this._bufferService.rows;for(var e=0,t=this._rowElements;et;)this._rowContainer.removeChild(this._rowElements.pop())},t.prototype.onResize=function(e,t){this._refreshRowElements(e,t),this._updateDimensions()},t.prototype.onCharSizeChanged=function(){this._updateDimensions()},t.prototype.onBlur=function(){this._rowContainer.classList.remove(y)},t.prototype.onFocus=function(){this._rowContainer.classList.add(y)},t.prototype.onSelectionChanged=function(e,t,n){for(;this._selectionContainer.children.length;)this._selectionContainer.removeChild(this._selectionContainer.children[0]);if(e&&t){var i=e[1]-this._bufferService.buffer.ydisp,r=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),a=Math.min(r,this._bufferService.rows-1);if(!(o>=this._bufferService.rows||a<0)){var s=document.createDocumentFragment();n?s.appendChild(this._createSelectionElement(o,e[0],t[0],a-o+1)):(s.appendChild(this._createSelectionElement(o,i===o?e[0]:0,o===r?t[0]:this._bufferService.cols)),s.appendChild(this._createSelectionElement(o+1,0,this._bufferService.cols,a-o-1)),o!==a&&s.appendChild(this._createSelectionElement(a,0,r===a?t[0]:this._bufferService.cols))),this._selectionContainer.appendChild(s)}}},t.prototype._createSelectionElement=function(e,t,n,i){void 0===i&&(i=1);var r=document.createElement("div");return r.style.height=i*this.dimensions.actualCellHeight+"px",r.style.top=e*this.dimensions.actualCellHeight+"px",r.style.left=t*this.dimensions.actualCellWidth+"px",r.style.width=this.dimensions.actualCellWidth*(n-t)+"px",r},t.prototype.onCursorMove=function(){},t.prototype.onOptionsChanged=function(){this._updateDimensions(),this._injectCss()},t.prototype.clear=function(){for(var e=0,t=this._rowElements;e=r&&(e=0,n++)}},o([a(6,d.IInstantiationService),a(7,u.ICharSizeService),a(8,d.IOptionsService),a(9,d.IBufferService)],t)}(c.Disposable);t.DomRenderer=b},3787:function(e,t,n){var i=this&&this.__decorate||function(e,t,n,i){var r,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},r=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DomRendererRowFactory=t.CURSOR_STYLE_UNDERLINE_CLASS=t.CURSOR_STYLE_BAR_CLASS=t.CURSOR_STYLE_BLOCK_CLASS=t.CURSOR_BLINK_CLASS=t.CURSOR_CLASS=t.UNDERLINE_CLASS=t.ITALIC_CLASS=t.DIM_CLASS=t.BOLD_CLASS=void 0;var o=n(8803),a=n(643),s=n(511),l=n(2585),c=n(4774),u=n(4725),d=n(4269);t.BOLD_CLASS="xterm-bold",t.DIM_CLASS="xterm-dim",t.ITALIC_CLASS="xterm-italic",t.UNDERLINE_CLASS="xterm-underline",t.CURSOR_CLASS="xterm-cursor",t.CURSOR_BLINK_CLASS="xterm-cursor-blink",t.CURSOR_STYLE_BLOCK_CLASS="xterm-cursor-block",t.CURSOR_STYLE_BAR_CLASS="xterm-cursor-bar",t.CURSOR_STYLE_UNDERLINE_CLASS="xterm-cursor-underline";var h=function(){function e(e,t,n,i){this._document=e,this._colors=t,this._characterJoinerService=n,this._optionsService=i,this._workCell=new s.CellData}return e.prototype.setColors=function(e){this._colors=e},e.prototype.createRow=function(e,n,i,r,s,l,u,h){for(var f=this._document.createDocumentFragment(),m=this._characterJoinerService.getJoinedCharacters(n),g=0,v=Math.min(e.length,h)-1;v>=0;v--)if(e.loadCell(v,this._workCell).getCode()!==a.NULL_CELL_CODE||i&&v===s){g=v+1;break}for(v=0;v0&&v===m[0][0]){_=!0;var S=m.shift();w=new d.JoinedCellData(this._workCell,e.translateToString(!0,S[0],S[1]),S[1]-S[0]),b=S[1]-1,y=w.getWidth()}var x=this._document.createElement("span");if(y>1&&(x.style.width=u*y+"px"),_&&(x.style.display="inline",s>=v&&s<=b&&(s=v)),i&&v===s)switch(x.classList.add(t.CURSOR_CLASS),l&&x.classList.add(t.CURSOR_BLINK_CLASS),r){case"bar":x.classList.add(t.CURSOR_STYLE_BAR_CLASS);break;case"underline":x.classList.add(t.CURSOR_STYLE_UNDERLINE_CLASS);break;default:x.classList.add(t.CURSOR_STYLE_BLOCK_CLASS)}w.isBold()&&x.classList.add(t.BOLD_CLASS),w.isItalic()&&x.classList.add(t.ITALIC_CLASS),w.isDim()&&x.classList.add(t.DIM_CLASS),w.isUnderline()&&x.classList.add(t.UNDERLINE_CLASS),x.textContent=w.isInvisible()?a.WHITESPACE_CELL_CHAR:w.getChars()||a.WHITESPACE_CELL_CHAR;var C=w.getFgColor(),k=w.getFgColorMode(),T=w.getBgColor(),A=w.getBgColorMode(),Z=!!w.isInverse();if(Z){var M=C;C=T,T=M;var O=k;k=A,A=O}switch(k){case 16777216:case 33554432:w.isBold()&&C<8&&this._optionsService.options.drawBoldTextInBrightColors&&(C+=8),this._applyMinimumContrast(x,this._colors.background,this._colors.ansi[C])||x.classList.add("xterm-fg-"+C);break;case 50331648:var E=c.rgba.toColor(C>>16&255,C>>8&255,255&C);this._applyMinimumContrast(x,this._colors.background,E)||this._addStyle(x,"color:#"+p(C.toString(16),"0",6));break;case 0:default:this._applyMinimumContrast(x,this._colors.background,this._colors.foreground)||Z&&x.classList.add("xterm-fg-"+o.INVERTED_DEFAULT_COLOR)}switch(A){case 16777216:case 33554432:x.classList.add("xterm-bg-"+T);break;case 50331648:this._addStyle(x,"background-color:#"+p(T.toString(16),"0",6));break;case 0:default:Z&&x.classList.add("xterm-bg-"+o.INVERTED_DEFAULT_COLOR)}f.appendChild(x),v=b}}return f},e.prototype._applyMinimumContrast=function(e,t,n){if(1===this._optionsService.options.minimumContrastRatio)return!1;var i=this._colors.contrastCache.getColor(this._workCell.bg,this._workCell.fg);return void 0===i&&(i=c.color.ensureContrastRatio(t,n,this._optionsService.options.minimumContrastRatio),this._colors.contrastCache.setColor(this._workCell.bg,this._workCell.fg,null!=i?i:null)),!!i&&(this._addStyle(e,"color:"+i.css),!0)},e.prototype._addStyle=function(e,t){e.setAttribute("style",""+(e.getAttribute("style")||"")+t+";")},i([r(2,u.ICharacterJoinerService),r(3,l.IOptionsService)],e)}();function p(e,t,n){for(;e.lengththis._bufferService.cols?[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[e,this.selectionStart[1]]}return this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]?[Math.max(this.selectionStart[0]+this.selectionStartLength,this.selectionEnd[0]),this.selectionEnd[1]]:this.selectionEnd}},enumerable:!1,configurable:!0}),e.prototype.areSelectionValuesReversed=function(){var e=this.selectionStart,t=this.selectionEnd;return!(!e||!t)&&(e[1]>t[1]||e[1]===t[1]&&e[0]>t[0])},e.prototype.onTrim=function(e){return this.selectionStart&&(this.selectionStart[1]-=e),this.selectionEnd&&(this.selectionEnd[1]-=e),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)},e}();t.SelectionModel=n},428:function(e,t,n){var i=this&&this.__decorate||function(e,t,n,i){var r,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},r=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CharSizeService=void 0;var o=n(2585),a=n(8460),s=function(){function e(e,t,n){this._optionsService=n,this.width=0,this.height=0,this._onCharSizeChange=new a.EventEmitter,this._measureStrategy=new l(e,t,this._optionsService)}return Object.defineProperty(e.prototype,"hasValidSize",{get:function(){return this.width>0&&this.height>0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onCharSizeChange",{get:function(){return this._onCharSizeChange.event},enumerable:!1,configurable:!0}),e.prototype.measure=function(){var e=this._measureStrategy.measure();e.width===this.width&&e.height===this.height||(this.width=e.width,this.height=e.height,this._onCharSizeChange.fire())},i([r(2,o.IOptionsService)],e)}();t.CharSizeService=s;var l=function(){function e(e,t,n){this._document=e,this._parentElement=t,this._optionsService=n,this._result={width:0,height:0},this._measureElement=this._document.createElement("span"),this._measureElement.classList.add("xterm-char-measure-element"),this._measureElement.textContent="W",this._measureElement.setAttribute("aria-hidden","true"),this._parentElement.appendChild(this._measureElement)}return e.prototype.measure=function(){this._measureElement.style.fontFamily=this._optionsService.options.fontFamily,this._measureElement.style.fontSize=this._optionsService.options.fontSize+"px";var e=this._measureElement.getBoundingClientRect();return 0!==e.width&&0!==e.height&&(this._result.width=e.width,this._result.height=Math.ceil(e.height)),this._result},e}()},4269:function(e,t,n){var i,r=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),o=this&&this.__decorate||function(e,t,n,i){var r,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},a=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CharacterJoinerService=t.JoinedCellData=void 0;var s=n(3734),l=n(643),c=n(511),u=n(2585),d=function(e){function t(t,n,i){var r=e.call(this)||this;return r.content=0,r.combinedData="",r.fg=t.fg,r.bg=t.bg,r.combinedData=n,r._width=i,r}return r(t,e),t.prototype.isCombined=function(){return 2097152},t.prototype.getWidth=function(){return this._width},t.prototype.getChars=function(){return this.combinedData},t.prototype.getCode=function(){return 2097151},t.prototype.setFromCharData=function(e){throw new Error("not implemented")},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(s.AttributeData);t.JoinedCellData=d;var h=function(){function e(e){this._bufferService=e,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new c.CellData}return e.prototype.register=function(e){var t={id:this._nextCharacterJoinerId++,handler:e};return this._characterJoiners.push(t),t.id},e.prototype.deregister=function(e){for(var t=0;t1)for(var d=this._getJoinedRanges(i,a,o,t,r),h=0;h1)for(d=this._getJoinedRanges(i,a,o,t,r),h=0;h=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},r=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseService=void 0;var o=n(4725),a=n(9806),s=function(){function e(e,t){this._renderService=e,this._charSizeService=t}return e.prototype.getCoords=function(e,t,n,i,r){return a.getCoords(e,t,n,i,this._charSizeService.hasValidSize,this._renderService.dimensions.actualCellWidth,this._renderService.dimensions.actualCellHeight,r)},e.prototype.getRawByteCoords=function(e,t,n,i){var r=this.getCoords(e,t,n,i);return a.getRawByteCoords(r)},i([r(0,o.IRenderService),r(1,o.ICharSizeService)],e)}();t.MouseService=s},3230:function(e,t,n){var i,r=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),o=this&&this.__decorate||function(e,t,n,i){var r,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},a=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.RenderService=void 0;var s=n(6193),l=n(8460),c=n(844),u=n(5596),d=n(3656),h=n(2585),p=n(4725),f=function(e){function t(t,n,i,r,o,a){var c=e.call(this)||this;if(c._renderer=t,c._rowCount=n,c._charSizeService=o,c._isPaused=!1,c._needsFullRefresh=!1,c._isNextRenderRedrawOnly=!0,c._needsSelectionRefresh=!1,c._canvasWidth=0,c._canvasHeight=0,c._selectionState={start:void 0,end:void 0,columnSelectMode:!1},c._onDimensionsChange=new l.EventEmitter,c._onRender=new l.EventEmitter,c._onRefreshRequest=new l.EventEmitter,c.register({dispose:function(){return c._renderer.dispose()}}),c._renderDebouncer=new s.RenderDebouncer(function(e,t){return c._renderRows(e,t)}),c.register(c._renderDebouncer),c._screenDprMonitor=new u.ScreenDprMonitor,c._screenDprMonitor.setListener(function(){return c.onDevicePixelRatioChange()}),c.register(c._screenDprMonitor),c.register(a.onResize(function(e){return c._fullRefresh()})),c.register(r.onOptionChange(function(){return c._renderer.onOptionsChanged()})),c.register(c._charSizeService.onCharSizeChange(function(){return c.onCharSizeChanged()})),c._renderer.onRequestRedraw(function(e){return c.refreshRows(e.start,e.end,!0)}),c.register(d.addDisposableDomListener(window,"resize",function(){return c.onDevicePixelRatioChange()})),"IntersectionObserver"in window){var h=new IntersectionObserver(function(e){return c._onIntersectionChange(e[e.length-1])},{threshold:0});h.observe(i),c.register({dispose:function(){return h.disconnect()}})}return c}return r(t,e),Object.defineProperty(t.prototype,"onDimensionsChange",{get:function(){return this._onDimensionsChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRenderedBufferChange",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRefreshRequest",{get:function(){return this._onRefreshRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"dimensions",{get:function(){return this._renderer.dimensions},enumerable:!1,configurable:!0}),t.prototype._onIntersectionChange=function(e){this._isPaused=void 0===e.isIntersecting?0===e.intersectionRatio:!e.isIntersecting,this._isPaused||this._charSizeService.hasValidSize||this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)},t.prototype.refreshRows=function(e,t,n){void 0===n&&(n=!1),this._isPaused?this._needsFullRefresh=!0:(n||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(e,t,this._rowCount))},t.prototype._renderRows=function(e,t){this._renderer.renderRows(e,t),this._needsSelectionRefresh&&(this._renderer.onSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRender.fire({start:e,end:t}),this._isNextRenderRedrawOnly=!0},t.prototype.resize=function(e,t){this._rowCount=t,this._fireOnCanvasResize()},t.prototype.changeOptions=function(){this._renderer.onOptionsChanged(),this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize()},t.prototype._fireOnCanvasResize=function(){this._renderer.dimensions.canvasWidth===this._canvasWidth&&this._renderer.dimensions.canvasHeight===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.dimensions)},t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.setRenderer=function(e){var t=this;this._renderer.dispose(),this._renderer=e,this._renderer.onRequestRedraw(function(e){return t.refreshRows(e.start,e.end,!0)}),this._needsSelectionRefresh=!0,this._fullRefresh()},t.prototype._fullRefresh=function(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)},t.prototype.setColors=function(e){this._renderer.setColors(e),this._fullRefresh()},t.prototype.onDevicePixelRatioChange=function(){this._charSizeService.measure(),this._renderer.onDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1)},t.prototype.onResize=function(e,t){this._renderer.onResize(e,t),this._fullRefresh()},t.prototype.onCharSizeChanged=function(){this._renderer.onCharSizeChanged()},t.prototype.onBlur=function(){this._renderer.onBlur()},t.prototype.onFocus=function(){this._renderer.onFocus()},t.prototype.onSelectionChanged=function(e,t,n){this._selectionState.start=e,this._selectionState.end=t,this._selectionState.columnSelectMode=n,this._renderer.onSelectionChanged(e,t,n)},t.prototype.onCursorMove=function(){this._renderer.onCursorMove()},t.prototype.clear=function(){this._renderer.clear()},o([a(3,h.IOptionsService),a(4,p.ICharSizeService),a(5,h.IBufferService)],t)}(c.Disposable);t.RenderService=f},9312:function(e,t,n){var i,r=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),o=this&&this.__decorate||function(e,t,n,i){var r,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},a=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionService=void 0;var s=n(6114),l=n(456),c=n(511),u=n(8460),d=n(4725),h=n(2585),p=n(9806),f=n(9504),m=n(844),g=n(4841),v=String.fromCharCode(160),y=new RegExp(v,"g"),_=function(e){function t(t,n,i,r,o,a,s,d){var h=e.call(this)||this;return h._element=t,h._screenElement=n,h._linkifier=i,h._bufferService=r,h._coreService=o,h._mouseService=a,h._optionsService=s,h._renderService=d,h._dragScrollAmount=0,h._enabled=!0,h._workCell=new c.CellData,h._mouseDownTimeStamp=0,h._oldHasSelection=!1,h._oldSelectionStart=void 0,h._oldSelectionEnd=void 0,h._onLinuxMouseSelection=h.register(new u.EventEmitter),h._onRedrawRequest=h.register(new u.EventEmitter),h._onSelectionChange=h.register(new u.EventEmitter),h._onRequestScrollLines=h.register(new u.EventEmitter),h._mouseMoveListener=function(e){return h._onMouseMove(e)},h._mouseUpListener=function(e){return h._onMouseUp(e)},h._coreService.onUserInput(function(){h.hasSelection&&h.clearSelection()}),h._trimListener=h._bufferService.buffer.lines.onTrim(function(e){return h._onTrim(e)}),h.register(h._bufferService.buffers.onBufferActivate(function(e){return h._onBufferActivate(e)})),h.enable(),h._model=new l.SelectionModel(h._bufferService),h._activeSelectionMode=0,h}return r(t,e),Object.defineProperty(t.prototype,"onLinuxMouseSelection",{get:function(){return this._onLinuxMouseSelection.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRedrawRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onSelectionChange",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestScrollLines",{get:function(){return this._onRequestScrollLines.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._removeMouseDownListeners()},t.prototype.reset=function(){this.clearSelection()},t.prototype.disable=function(){this.clearSelection(),this._enabled=!1},t.prototype.enable=function(){this._enabled=!0},Object.defineProperty(t.prototype,"selectionStart",{get:function(){return this._model.finalSelectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"selectionEnd",{get:function(){return this._model.finalSelectionEnd},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"hasSelection",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;return!(!e||!t||e[0]===t[0]&&e[1]===t[1])},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"selectionText",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;if(!e||!t)return"";var n=this._bufferService.buffer,i=[];if(3===this._activeSelectionMode){if(e[0]===t[0])return"";for(var r=e[1];r<=t[1];r++){var o=n.translateBufferLineToString(r,!0,e[0],t[0]);i.push(o)}}else{for(i.push(n.translateBufferLineToString(e[1],!0,e[0],e[1]===t[1]?t[0]:void 0)),r=e[1]+1;r<=t[1]-1;r++){var a=n.lines.get(r);o=n.translateBufferLineToString(r,!0),a&&a.isWrapped?i[i.length-1]+=o:i.push(o)}e[1]!==t[1]&&(a=n.lines.get(t[1]),o=n.translateBufferLineToString(t[1],!0,0,t[0]),a&&a.isWrapped?i[i.length-1]+=o:i.push(o))}return i.map(function(e){return e.replace(y," ")}).join(s.isWindows?"\r\n":"\n")},enumerable:!1,configurable:!0}),t.prototype.clearSelection=function(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()},t.prototype.refresh=function(e){var t=this;this._refreshAnimationFrame||(this._refreshAnimationFrame=window.requestAnimationFrame(function(){return t._refresh()})),s.isLinux&&e&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)},t.prototype._refresh=function(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:3===this._activeSelectionMode})},t.prototype._isClickInSelection=function(e){var t=this._getMouseBufferCoords(e),n=this._model.finalSelectionStart,i=this._model.finalSelectionEnd;return!!(n&&i&&t)&&this._areCoordsInSelection(t,n,i)},t.prototype._areCoordsInSelection=function(e,t,n){return e[1]>t[1]&&e[1]=t[0]&&e[0]=t[0]},t.prototype._selectWordAtCursor=function(e,t){var n,i,r=null===(i=null===(n=this._linkifier.currentLink)||void 0===n?void 0:n.link)||void 0===i?void 0:i.range;if(r)return this._model.selectionStart=[r.start.x-1,r.start.y-1],this._model.selectionStartLength=g.getRangeLength(r,this._bufferService.cols),this._model.selectionEnd=void 0,!0;var o=this._getMouseBufferCoords(e);return!!o&&(this._selectWordAt(o,t),this._model.selectionEnd=void 0,!0)},t.prototype.selectAll=function(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()},t.prototype.selectLines=function(e,t){this._model.clearSelection(),e=Math.max(e,0),t=Math.min(t,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,e],this._model.selectionEnd=[this._bufferService.cols,t],this.refresh(),this._onSelectionChange.fire()},t.prototype._onTrim=function(e){this._model.onTrim(e)&&this.refresh()},t.prototype._getMouseBufferCoords=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(t)return t[0]--,t[1]--,t[1]+=this._bufferService.buffer.ydisp,t},t.prototype._getMouseEventScrollAmount=function(e){var t=p.getCoordsRelativeToElement(e,this._screenElement)[1],n=this._renderService.dimensions.canvasHeight;return t>=0&&t<=n?0:(t>n&&(t-=n),t=Math.min(Math.max(t,-50),50),(t/=50)/Math.abs(t)+Math.round(14*t))},t.prototype.shouldForceSelection=function(e){return s.isMac?e.altKey&&this._optionsService.options.macOptionClickForcesSelection:e.shiftKey},t.prototype.onMouseDown=function(e){if(this._mouseDownTimeStamp=e.timeStamp,(2!==e.button||!this.hasSelection)&&0===e.button){if(!this._enabled){if(!this.shouldForceSelection(e))return;e.stopPropagation()}e.preventDefault(),this._dragScrollAmount=0,this._enabled&&e.shiftKey?this._onIncrementalClick(e):1===e.detail?this._onSingleClick(e):2===e.detail?this._onDoubleClick(e):3===e.detail&&this._onTripleClick(e),this._addMouseDownListeners(),this.refresh(!0)}},t.prototype._addMouseDownListeners=function(){var e=this;this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener("mouseup",this._mouseUpListener)),this._dragScrollIntervalTimer=window.setInterval(function(){return e._dragScroll()},50)},t.prototype._removeMouseDownListeners=function(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener("mouseup",this._mouseUpListener)),clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0},t.prototype._onIncrementalClick=function(e){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(e))},t.prototype._onSingleClick=function(e){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(e)?3:0,this._model.selectionStart=this._getMouseBufferCoords(e),this._model.selectionStart){this._model.selectionEnd=void 0;var t=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);t&&t.length!==this._model.selectionStart[0]&&0===t.hasWidth(this._model.selectionStart[0])&&this._model.selectionStart[0]++}},t.prototype._onDoubleClick=function(e){this._selectWordAtCursor(e,!0)&&(this._activeSelectionMode=1)},t.prototype._onTripleClick=function(e){var t=this._getMouseBufferCoords(e);t&&(this._activeSelectionMode=2,this._selectLineAt(t[1]))},t.prototype.shouldColumnSelect=function(e){return e.altKey&&!(s.isMac&&this._optionsService.options.macOptionClickForcesSelection)},t.prototype._onMouseMove=function(e){if(e.stopImmediatePropagation(),this._model.selectionStart){var t=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(e),this._model.selectionEnd){2===this._activeSelectionMode?this._model.selectionEnd[0]=this._model.selectionEnd[1]0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));var n=this._bufferService.buffer;if(this._model.selectionEnd[1]0?(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(e.ydisp+this._bufferService.rows,e.lines.length-1)):(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=e.ydisp),this.refresh()}},t.prototype._onMouseUp=function(e){var t=e.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&t<500&&e.altKey&&this._optionsService.getOption("altClickMovesCursor")){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){var n=this._mouseService.getCoords(e,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(n&&void 0!==n[0]&&void 0!==n[1]){var i=f.moveToCellSequence(n[0]-1,n[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(i,!0)}}}else this._fireEventIfSelectionChanged()},t.prototype._fireEventIfSelectionChanged=function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd,n=!(!e||!t||e[0]===t[0]&&e[1]===t[1]);n?e&&t&&(this._oldSelectionStart&&this._oldSelectionEnd&&e[0]===this._oldSelectionStart[0]&&e[1]===this._oldSelectionStart[1]&&t[0]===this._oldSelectionEnd[0]&&t[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(e,t,n)):this._oldHasSelection&&this._fireOnSelectionChange(e,t,n)},t.prototype._fireOnSelectionChange=function(e,t,n){this._oldSelectionStart=e,this._oldSelectionEnd=t,this._oldHasSelection=n,this._onSelectionChange.fire()},t.prototype._onBufferActivate=function(e){var t=this;this.clearSelection(),this._trimListener.dispose(),this._trimListener=e.activeBuffer.lines.onTrim(function(e){return t._onTrim(e)})},t.prototype._convertViewportColToCharacterIndex=function(e,t){for(var n=t[0],i=0;t[0]>=i;i++){var r=e.loadCell(i,this._workCell).getChars().length;0===this._workCell.getWidth()?n--:r>1&&t[0]!==i&&(n+=r-1)}return n},t.prototype.setSelection=function(e,t,n){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[e,t],this._model.selectionStartLength=n,this.refresh()},t.prototype.rightClickSelect=function(e){this._isClickInSelection(e)||(this._selectWordAtCursor(e,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())},t.prototype._getWordAt=function(e,t,n,i){if(void 0===n&&(n=!0),void 0===i&&(i=!0),!(e[0]>=this._bufferService.cols)){var r=this._bufferService.buffer,o=r.lines.get(e[1]);if(o){var a=r.translateBufferLineToString(e[1],!1),s=this._convertViewportColToCharacterIndex(o,e),l=s,c=e[0]-s,u=0,d=0,h=0,p=0;if(" "===a.charAt(s)){for(;s>0&&" "===a.charAt(s-1);)s--;for(;l1&&(p+=g-1,l+=g-1);f>0&&s>0&&!this._isCharWordSeparator(o.loadCell(f-1,this._workCell));){o.loadCell(f-1,this._workCell);var v=this._workCell.getChars().length;0===this._workCell.getWidth()?(u++,f--):v>1&&(h+=v-1,s-=v-1),s--,f--}for(;m1&&(p+=y-1,l+=y-1),l++,m++}}l++;var _=s+c-u+h,b=Math.min(this._bufferService.cols,l-s+u+d-h-p);if(t||""!==a.slice(s,l).trim()){if(n&&0===_&&32!==o.getCodePoint(0)){var w=r.lines.get(e[1]-1);if(w&&o.isWrapped&&32!==w.getCodePoint(this._bufferService.cols-1)){var S=this._getWordAt([this._bufferService.cols-1,e[1]-1],!1,!0,!1);if(S){var x=this._bufferService.cols-S.start;_-=x,b+=x}}}if(i&&_+b===this._bufferService.cols&&32!==o.getCodePoint(this._bufferService.cols-1)){var C=r.lines.get(e[1]+1);if(C&&C.isWrapped&&32!==C.getCodePoint(0)){var k=this._getWordAt([0,e[1]+1],!1,!1,!0);k&&(b+=k.length)}}return{start:_,length:b}}}}},t.prototype._selectWordAt=function(e,t){var n=this._getWordAt(e,t);if(n){for(;n.start<0;)n.start+=this._bufferService.cols,e[1]--;this._model.selectionStart=[n.start,e[1]],this._model.selectionStartLength=n.length}},t.prototype._selectToWordAt=function(e){var t=this._getWordAt(e,!0);if(t){for(var n=e[1];t.start<0;)t.start+=this._bufferService.cols,n--;if(!this._model.areSelectionValuesReversed())for(;t.start+t.length>this._bufferService.cols;)t.length-=this._bufferService.cols,n++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?t.start:t.start+t.length,n]}},t.prototype._isCharWordSeparator=function(e){return 0!==e.getWidth()&&this._optionsService.options.wordSeparator.indexOf(e.getChars())>=0},t.prototype._selectLineAt=function(e){var t=this._bufferService.buffer.getWrappedRangeForLine(e);this._model.selectionStart=[0,t.first],this._model.selectionEnd=[this._bufferService.cols,t.last],this._model.selectionStartLength=0},o([a(3,h.IBufferService),a(4,h.ICoreService),a(5,d.IMouseService),a(6,h.IOptionsService),a(7,d.IRenderService)],t)}(m.Disposable);t.SelectionService=_},4725:function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.ICharacterJoinerService=t.ISoundService=t.ISelectionService=t.IRenderService=t.IMouseService=t.ICoreBrowserService=t.ICharSizeService=void 0;var i=n(8343);t.ICharSizeService=i.createDecorator("CharSizeService"),t.ICoreBrowserService=i.createDecorator("CoreBrowserService"),t.IMouseService=i.createDecorator("MouseService"),t.IRenderService=i.createDecorator("RenderService"),t.ISelectionService=i.createDecorator("SelectionService"),t.ISoundService=i.createDecorator("SoundService"),t.ICharacterJoinerService=i.createDecorator("CharacterJoinerService")},357:function(e,t,n){var i=this&&this.__decorate||function(e,t,n,i){var r,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},r=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SoundService=void 0;var o=n(2585),a=function(){function e(e){this._optionsService=e}return Object.defineProperty(e,"audioContext",{get:function(){if(!e._audioContext){var t=window.AudioContext||window.webkitAudioContext;if(!t)return console.warn("Web Audio API is not supported by this browser. Consider upgrading to the latest version"),null;e._audioContext=new t}return e._audioContext},enumerable:!1,configurable:!0}),e.prototype.playBellSound=function(){var t=e.audioContext;if(t){var n=t.createBufferSource();t.decodeAudioData(this._base64ToArrayBuffer(this._removeMimeType(this._optionsService.options.bellSound)),function(e){n.buffer=e,n.connect(t.destination),n.start(0)})}},e.prototype._base64ToArrayBuffer=function(e){for(var t=window.atob(e),n=t.length,i=new Uint8Array(n),r=0;rthis._length)for(var t=this._length;t=e;r--)this._array[this._getCyclicIndex(r+n.length)]=this._array[this._getCyclicIndex(r)];for(r=0;rthis._maxLength){var o=this._length+n.length-this._maxLength;this._startIndex+=o,this._length=this._maxLength,this.onTrimEmitter.fire(o)}else this._length+=n.length},e.prototype.trimStart=function(e){e>this._length&&(e=this._length),this._startIndex+=e,this._length-=e,this.onTrimEmitter.fire(e)},e.prototype.shiftElements=function(e,t,n){if(!(t<=0)){if(e<0||e>=this._length)throw new Error("start argument out of range");if(e+n<0)throw new Error("Cannot shift elements in list beyond index 0");if(n>0){for(var i=t-1;i>=0;i--)this.set(e+i+n,this.get(e+i));var r=e+t+n-this._length;if(r>0)for(this._length+=r;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(i=0;i24)return t.setWinLines||!1;switch(e){case 1:return!!t.restoreWin;case 2:return!!t.minimizeWin;case 3:return!!t.setWinPosition;case 4:return!!t.setWinSizePixels;case 5:return!!t.raiseWin;case 6:return!!t.lowerWin;case 7:return!!t.refreshWin;case 8:return!!t.setWinSizeChars;case 9:return!!t.maximizeWin;case 10:return!!t.fullscreenWin;case 11:return!!t.getWinState;case 13:return!!t.getWinPosition;case 14:return!!t.getWinSizePixels;case 15:return!!t.getScreenSizePixels;case 16:return!!t.getCellSizePixels;case 18:return!!t.getWinSizeChars;case 19:return!!t.getScreenSizeChars;case 20:return!!t.getIconTitle;case 21:return!!t.getWinTitle;case 22:return!!t.pushTitle;case 23:return!!t.popTitle;case 24:return!!t.setWinLines}return!1}!function(e){e[e.GET_WIN_SIZE_PIXELS=0]="GET_WIN_SIZE_PIXELS",e[e.GET_CELL_SIZE_PIXELS=1]="GET_CELL_SIZE_PIXELS"}(o=t.WindowsOptionsReportType||(t.WindowsOptionsReportType={}));var x=function(){function e(e,t,n,i){this._bufferService=e,this._coreService=t,this._logService=n,this._optionsService=i,this._data=new Uint32Array(0)}return e.prototype.hook=function(e){this._data=new Uint32Array(0)},e.prototype.put=function(e,t,n){this._data=u.concat(this._data,e.subarray(t,n))},e.prototype.unhook=function(e){if(!e)return this._data=new Uint32Array(0),!0;var t=d.utf32ToString(this._data);switch(this._data=new Uint32Array(0),t){case'"q':this._coreService.triggerDataEvent(a.C0.ESC+'P1$r0"q'+a.C0.ESC+"\\");break;case'"p':this._coreService.triggerDataEvent(a.C0.ESC+'P1$r61;1"p'+a.C0.ESC+"\\");break;case"r":this._coreService.triggerDataEvent(a.C0.ESC+"P1$r"+(this._bufferService.buffer.scrollTop+1)+";"+(this._bufferService.buffer.scrollBottom+1)+"r"+a.C0.ESC+"\\");break;case"m":this._coreService.triggerDataEvent(a.C0.ESC+"P1$r0m"+a.C0.ESC+"\\");break;case" q":var n={block:2,underline:4,bar:6}[this._optionsService.options.cursorStyle];this._coreService.triggerDataEvent(a.C0.ESC+"P1$r"+(n-=this._optionsService.options.cursorBlink?1:0)+" q"+a.C0.ESC+"\\");break;default:this._logService.debug("Unknown DCS $q %s",t),this._coreService.triggerDataEvent(a.C0.ESC+"P0$r"+a.C0.ESC+"\\")}return!0},e}(),C=function(e){function t(t,n,i,r,o,c,u,f,g){void 0===g&&(g=new l.EscapeSequenceParser);var v=e.call(this)||this;v._bufferService=t,v._charsetService=n,v._coreService=i,v._dirtyRowService=r,v._logService=o,v._optionsService=c,v._coreMouseService=u,v._unicodeService=f,v._parser=g,v._parseBuffer=new Uint32Array(4096),v._stringDecoder=new d.StringToUtf32,v._utf8Decoder=new d.Utf8ToUtf32,v._workCell=new m.CellData,v._windowTitle="",v._iconName="",v._windowTitleStack=[],v._iconNameStack=[],v._curAttrData=h.DEFAULT_ATTR_DATA.clone(),v._eraseAttrDataInternal=h.DEFAULT_ATTR_DATA.clone(),v._onRequestBell=new p.EventEmitter,v._onRequestRefreshRows=new p.EventEmitter,v._onRequestReset=new p.EventEmitter,v._onRequestSyncScrollBar=new p.EventEmitter,v._onRequestWindowsOptionsReport=new p.EventEmitter,v._onA11yChar=new p.EventEmitter,v._onA11yTab=new p.EventEmitter,v._onCursorMove=new p.EventEmitter,v._onLineFeed=new p.EventEmitter,v._onScroll=new p.EventEmitter,v._onTitleChange=new p.EventEmitter,v._onAnsiColorChange=new p.EventEmitter,v._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},v.register(v._parser),v._parser.setCsiHandlerFallback(function(e,t){v._logService.debug("Unknown CSI code: ",{identifier:v._parser.identToString(e),params:t.toArray()})}),v._parser.setEscHandlerFallback(function(e){v._logService.debug("Unknown ESC code: ",{identifier:v._parser.identToString(e)})}),v._parser.setExecuteHandlerFallback(function(e){v._logService.debug("Unknown EXECUTE code: ",{code:e})}),v._parser.setOscHandlerFallback(function(e,t,n){v._logService.debug("Unknown OSC code: ",{identifier:e,action:t,data:n})}),v._parser.setDcsHandlerFallback(function(e,t,n){"HOOK"===t&&(n=n.toArray()),v._logService.debug("Unknown DCS code: ",{identifier:v._parser.identToString(e),action:t,payload:n})}),v._parser.setPrintHandler(function(e,t,n){return v.print(e,t,n)}),v._parser.registerCsiHandler({final:"@"},function(e){return v.insertChars(e)}),v._parser.registerCsiHandler({intermediates:" ",final:"@"},function(e){return v.scrollLeft(e)}),v._parser.registerCsiHandler({final:"A"},function(e){return v.cursorUp(e)}),v._parser.registerCsiHandler({intermediates:" ",final:"A"},function(e){return v.scrollRight(e)}),v._parser.registerCsiHandler({final:"B"},function(e){return v.cursorDown(e)}),v._parser.registerCsiHandler({final:"C"},function(e){return v.cursorForward(e)}),v._parser.registerCsiHandler({final:"D"},function(e){return v.cursorBackward(e)}),v._parser.registerCsiHandler({final:"E"},function(e){return v.cursorNextLine(e)}),v._parser.registerCsiHandler({final:"F"},function(e){return v.cursorPrecedingLine(e)}),v._parser.registerCsiHandler({final:"G"},function(e){return v.cursorCharAbsolute(e)}),v._parser.registerCsiHandler({final:"H"},function(e){return v.cursorPosition(e)}),v._parser.registerCsiHandler({final:"I"},function(e){return v.cursorForwardTab(e)}),v._parser.registerCsiHandler({final:"J"},function(e){return v.eraseInDisplay(e)}),v._parser.registerCsiHandler({prefix:"?",final:"J"},function(e){return v.eraseInDisplay(e)}),v._parser.registerCsiHandler({final:"K"},function(e){return v.eraseInLine(e)}),v._parser.registerCsiHandler({prefix:"?",final:"K"},function(e){return v.eraseInLine(e)}),v._parser.registerCsiHandler({final:"L"},function(e){return v.insertLines(e)}),v._parser.registerCsiHandler({final:"M"},function(e){return v.deleteLines(e)}),v._parser.registerCsiHandler({final:"P"},function(e){return v.deleteChars(e)}),v._parser.registerCsiHandler({final:"S"},function(e){return v.scrollUp(e)}),v._parser.registerCsiHandler({final:"T"},function(e){return v.scrollDown(e)}),v._parser.registerCsiHandler({final:"X"},function(e){return v.eraseChars(e)}),v._parser.registerCsiHandler({final:"Z"},function(e){return v.cursorBackwardTab(e)}),v._parser.registerCsiHandler({final:"`"},function(e){return v.charPosAbsolute(e)}),v._parser.registerCsiHandler({final:"a"},function(e){return v.hPositionRelative(e)}),v._parser.registerCsiHandler({final:"b"},function(e){return v.repeatPrecedingCharacter(e)}),v._parser.registerCsiHandler({final:"c"},function(e){return v.sendDeviceAttributesPrimary(e)}),v._parser.registerCsiHandler({prefix:">",final:"c"},function(e){return v.sendDeviceAttributesSecondary(e)}),v._parser.registerCsiHandler({final:"d"},function(e){return v.linePosAbsolute(e)}),v._parser.registerCsiHandler({final:"e"},function(e){return v.vPositionRelative(e)}),v._parser.registerCsiHandler({final:"f"},function(e){return v.hVPosition(e)}),v._parser.registerCsiHandler({final:"g"},function(e){return v.tabClear(e)}),v._parser.registerCsiHandler({final:"h"},function(e){return v.setMode(e)}),v._parser.registerCsiHandler({prefix:"?",final:"h"},function(e){return v.setModePrivate(e)}),v._parser.registerCsiHandler({final:"l"},function(e){return v.resetMode(e)}),v._parser.registerCsiHandler({prefix:"?",final:"l"},function(e){return v.resetModePrivate(e)}),v._parser.registerCsiHandler({final:"m"},function(e){return v.charAttributes(e)}),v._parser.registerCsiHandler({final:"n"},function(e){return v.deviceStatus(e)}),v._parser.registerCsiHandler({prefix:"?",final:"n"},function(e){return v.deviceStatusPrivate(e)}),v._parser.registerCsiHandler({intermediates:"!",final:"p"},function(e){return v.softReset(e)}),v._parser.registerCsiHandler({intermediates:" ",final:"q"},function(e){return v.setCursorStyle(e)}),v._parser.registerCsiHandler({final:"r"},function(e){return v.setScrollRegion(e)}),v._parser.registerCsiHandler({final:"s"},function(e){return v.saveCursor(e)}),v._parser.registerCsiHandler({final:"t"},function(e){return v.windowOptions(e)}),v._parser.registerCsiHandler({final:"u"},function(e){return v.restoreCursor(e)}),v._parser.registerCsiHandler({intermediates:"'",final:"}"},function(e){return v.insertColumns(e)}),v._parser.registerCsiHandler({intermediates:"'",final:"~"},function(e){return v.deleteColumns(e)}),v._parser.setExecuteHandler(a.C0.BEL,function(){return v.bell()}),v._parser.setExecuteHandler(a.C0.LF,function(){return v.lineFeed()}),v._parser.setExecuteHandler(a.C0.VT,function(){return v.lineFeed()}),v._parser.setExecuteHandler(a.C0.FF,function(){return v.lineFeed()}),v._parser.setExecuteHandler(a.C0.CR,function(){return v.carriageReturn()}),v._parser.setExecuteHandler(a.C0.BS,function(){return v.backspace()}),v._parser.setExecuteHandler(a.C0.HT,function(){return v.tab()}),v._parser.setExecuteHandler(a.C0.SO,function(){return v.shiftOut()}),v._parser.setExecuteHandler(a.C0.SI,function(){return v.shiftIn()}),v._parser.setExecuteHandler(a.C1.IND,function(){return v.index()}),v._parser.setExecuteHandler(a.C1.NEL,function(){return v.nextLine()}),v._parser.setExecuteHandler(a.C1.HTS,function(){return v.tabSet()}),v._parser.registerOscHandler(0,new y.OscHandler(function(e){return v.setTitle(e),v.setIconName(e),!0})),v._parser.registerOscHandler(1,new y.OscHandler(function(e){return v.setIconName(e)})),v._parser.registerOscHandler(2,new y.OscHandler(function(e){return v.setTitle(e)})),v._parser.registerOscHandler(4,new y.OscHandler(function(e){return v.setAnsiColor(e)})),v._parser.registerEscHandler({final:"7"},function(){return v.saveCursor()}),v._parser.registerEscHandler({final:"8"},function(){return v.restoreCursor()}),v._parser.registerEscHandler({final:"D"},function(){return v.index()}),v._parser.registerEscHandler({final:"E"},function(){return v.nextLine()}),v._parser.registerEscHandler({final:"H"},function(){return v.tabSet()}),v._parser.registerEscHandler({final:"M"},function(){return v.reverseIndex()}),v._parser.registerEscHandler({final:"="},function(){return v.keypadApplicationMode()}),v._parser.registerEscHandler({final:">"},function(){return v.keypadNumericMode()}),v._parser.registerEscHandler({final:"c"},function(){return v.fullReset()}),v._parser.registerEscHandler({final:"n"},function(){return v.setgLevel(2)}),v._parser.registerEscHandler({final:"o"},function(){return v.setgLevel(3)}),v._parser.registerEscHandler({final:"|"},function(){return v.setgLevel(3)}),v._parser.registerEscHandler({final:"}"},function(){return v.setgLevel(2)}),v._parser.registerEscHandler({final:"~"},function(){return v.setgLevel(1)}),v._parser.registerEscHandler({intermediates:"%",final:"@"},function(){return v.selectDefaultCharset()}),v._parser.registerEscHandler({intermediates:"%",final:"G"},function(){return v.selectDefaultCharset()});var _=function(e){b._parser.registerEscHandler({intermediates:"(",final:e},function(){return v.selectCharset("("+e)}),b._parser.registerEscHandler({intermediates:")",final:e},function(){return v.selectCharset(")"+e)}),b._parser.registerEscHandler({intermediates:"*",final:e},function(){return v.selectCharset("*"+e)}),b._parser.registerEscHandler({intermediates:"+",final:e},function(){return v.selectCharset("+"+e)}),b._parser.registerEscHandler({intermediates:"-",final:e},function(){return v.selectCharset("-"+e)}),b._parser.registerEscHandler({intermediates:".",final:e},function(){return v.selectCharset("."+e)}),b._parser.registerEscHandler({intermediates:"/",final:e},function(){return v.selectCharset("/"+e)})},b=this;for(var w in s.CHARSETS)_(w);return v._parser.registerEscHandler({intermediates:"#",final:"8"},function(){return v.screenAlignmentPattern()}),v._parser.setErrorHandler(function(e){return v._logService.error("Parsing error: ",e),e}),v._parser.registerDcsHandler({intermediates:"$",final:"q"},new x(v._bufferService,v._coreService,v._logService,v._optionsService)),v}return r(t,e),Object.defineProperty(t.prototype,"onRequestBell",{get:function(){return this._onRequestBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestRefreshRows",{get:function(){return this._onRequestRefreshRows.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestReset",{get:function(){return this._onRequestReset.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestSyncScrollBar",{get:function(){return this._onRequestSyncScrollBar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestWindowsOptionsReport",{get:function(){return this._onRequestWindowsOptionsReport.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yChar",{get:function(){return this._onA11yChar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yTab",{get:function(){return this._onA11yTab.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onCursorMove",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onLineFeed",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onScroll",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onTitleChange",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onAnsiColorChange",{get:function(){return this._onAnsiColorChange.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._preserveStack=function(e,t,n,i){this._parseStack.paused=!0,this._parseStack.cursorStartX=e,this._parseStack.cursorStartY=t,this._parseStack.decodedLength=n,this._parseStack.position=i},t.prototype._logSlowResolvingAsync=function(e){this._logService.logLevel<=v.LogLevelEnum.WARN&&Promise.race([e,new Promise(function(e,t){return setTimeout(function(){return t("#SLOW_TIMEOUT")},5e3)})]).catch(function(e){if("#SLOW_TIMEOUT"!==e)throw e;console.warn("async parser handler taking longer than 5000 ms")})},t.prototype.parse=function(e,t){var n,i=this._bufferService.buffer,r=i.x,o=i.y,a=0,s=this._parseStack.paused;if(s){if(n=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,t))return this._logSlowResolvingAsync(n),n;r=this._parseStack.cursorStartX,o=this._parseStack.cursorStartY,this._parseStack.paused=!1,e.length>w&&(a=this._parseStack.position+w)}if(this._logService.debug("parsing data",e),this._parseBuffer.lengthw)for(var l=a;l0&&2===p.getWidth(o.x-1)&&p.setCellFromCodePoint(o.x-1,0,1,h.fg,h.bg,h.extended);for(var m=t;m=l)if(c){for(;o.x=this._bufferService.rows&&(o.y=this._bufferService.rows-1),o.lines.get(o.ybase+o.y).isWrapped=!0),p=o.lines.get(o.ybase+o.y)}else if(o.x=l-1,2===r)continue;if(u&&(p.insertCells(o.x,r,o.getNullCell(h),h),2===p.getWidth(l-1)&&p.setCellFromCodePoint(l-1,f.NULL_CELL_CODE,f.NULL_CELL_WIDTH,h.fg,h.bg,h.extended)),p.setCellFromCodePoint(o.x++,i,r,h.fg,h.bg,h.extended),r>0)for(;--r;)p.setCellFromCodePoint(o.x++,0,0,h.fg,h.bg,h.extended)}else p.getWidth(o.x-1)?p.addCodepointToCell(o.x-1,i):p.addCodepointToCell(o.x-2,i)}n-t>0&&(p.loadCell(o.x-1,this._workCell),this._parser.precedingCodepoint=2===this._workCell.getWidth()||this._workCell.getCode()>65535?0:this._workCell.isCombined()?this._workCell.getChars().charCodeAt(0):this._workCell.content),o.x0&&0===p.getWidth(o.x)&&!p.hasContent(o.x)&&p.setCellFromCodePoint(o.x,0,1,h.fg,h.bg,h.extended),this._dirtyRowService.markDirty(o.y)},t.prototype.registerCsiHandler=function(e,t){var n=this;return this._parser.registerCsiHandler(e,"t"!==e.final||e.prefix||e.intermediates?t:function(e){return!S(e.params[0],n._optionsService.options.windowOptions)||t(e)})},t.prototype.registerDcsHandler=function(e,t){return this._parser.registerDcsHandler(e,new _.DcsHandler(t))},t.prototype.registerEscHandler=function(e,t){return this._parser.registerEscHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._parser.registerOscHandler(e,new y.OscHandler(t))},t.prototype.bell=function(){return this._onRequestBell.fire(),!0},t.prototype.lineFeed=function(){var e=this._bufferService.buffer;return this._dirtyRowService.markDirty(e.y),this._optionsService.options.convertEol&&(e.x=0),e.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),e.x>=this._bufferService.cols&&e.x--,this._dirtyRowService.markDirty(e.y),this._onLineFeed.fire(),!0},t.prototype.carriageReturn=function(){return this._bufferService.buffer.x=0,!0},t.prototype.backspace=function(){var e,t=this._bufferService.buffer;if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),t.x>0&&t.x--,!0;if(this._restrictCursor(this._bufferService.cols),t.x>0)t.x--;else if(0===t.x&&t.y>t.scrollTop&&t.y<=t.scrollBottom&&(null===(e=t.lines.get(t.ybase+t.y))||void 0===e?void 0:e.isWrapped)){t.lines.get(t.ybase+t.y).isWrapped=!1,t.y--,t.x=this._bufferService.cols-1;var n=t.lines.get(t.ybase+t.y);n.hasWidth(t.x)&&!n.hasContent(t.x)&&t.x--}return this._restrictCursor(),!0},t.prototype.tab=function(){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;var e=this._bufferService.buffer.x;return this._bufferService.buffer.x=this._bufferService.buffer.nextStop(),this._optionsService.options.screenReaderMode&&this._onA11yTab.fire(this._bufferService.buffer.x-e),!0},t.prototype.shiftOut=function(){return this._charsetService.setgLevel(1),!0},t.prototype.shiftIn=function(){return this._charsetService.setgLevel(0),!0},t.prototype._restrictCursor=function(e){void 0===e&&(e=this._bufferService.cols-1),this._bufferService.buffer.x=Math.min(e,Math.max(0,this._bufferService.buffer.x)),this._bufferService.buffer.y=this._coreService.decPrivateModes.origin?Math.min(this._bufferService.buffer.scrollBottom,Math.max(this._bufferService.buffer.scrollTop,this._bufferService.buffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._bufferService.buffer.y)),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._setCursor=function(e,t){this._dirtyRowService.markDirty(this._bufferService.buffer.y),this._coreService.decPrivateModes.origin?(this._bufferService.buffer.x=e,this._bufferService.buffer.y=this._bufferService.buffer.scrollTop+t):(this._bufferService.buffer.x=e,this._bufferService.buffer.y=t),this._restrictCursor(),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._moveCursor=function(e,t){this._restrictCursor(),this._setCursor(this._bufferService.buffer.x+e,this._bufferService.buffer.y+t)},t.prototype.cursorUp=function(e){var t=this._bufferService.buffer.y-this._bufferService.buffer.scrollTop;return this._moveCursor(0,t>=0?-Math.min(t,e.params[0]||1):-(e.params[0]||1)),!0},t.prototype.cursorDown=function(e){var t=this._bufferService.buffer.scrollBottom-this._bufferService.buffer.y;return this._moveCursor(0,t>=0?Math.min(t,e.params[0]||1):e.params[0]||1),!0},t.prototype.cursorForward=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.cursorBackward=function(e){return this._moveCursor(-(e.params[0]||1),0),!0},t.prototype.cursorNextLine=function(e){return this.cursorDown(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorPrecedingLine=function(e){return this.cursorUp(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorCharAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.cursorPosition=function(e){return this._setCursor(e.length>=2?(e.params[1]||1)-1:0,(e.params[0]||1)-1),!0},t.prototype.charPosAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.hPositionRelative=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.linePosAbsolute=function(e){return this._setCursor(this._bufferService.buffer.x,(e.params[0]||1)-1),!0},t.prototype.vPositionRelative=function(e){return this._moveCursor(0,e.params[0]||1),!0},t.prototype.hVPosition=function(e){return this.cursorPosition(e),!0},t.prototype.tabClear=function(e){var t=e.params[0];return 0===t?delete this._bufferService.buffer.tabs[this._bufferService.buffer.x]:3===t&&(this._bufferService.buffer.tabs={}),!0},t.prototype.cursorForwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1;t--;)this._bufferService.buffer.x=this._bufferService.buffer.nextStop();return!0},t.prototype.cursorBackwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1,n=this._bufferService.buffer;t--;)n.x=n.prevStop();return!0},t.prototype._eraseInBufferLine=function(e,t,n,i){void 0===i&&(i=!1);var r=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);r.replaceCells(t,n,this._bufferService.buffer.getNullCell(this._eraseAttrData()),this._eraseAttrData()),i&&(r.isWrapped=!1)},t.prototype._resetBufferLine=function(e){var t=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);t.fill(this._bufferService.buffer.getNullCell(this._eraseAttrData())),t.isWrapped=!1},t.prototype.eraseInDisplay=function(e){var t;switch(this._restrictCursor(this._bufferService.cols),e.params[0]){case 0:for(this._dirtyRowService.markDirty(t=this._bufferService.buffer.y),this._eraseInBufferLine(t++,this._bufferService.buffer.x,this._bufferService.cols,0===this._bufferService.buffer.x);t=this._bufferService.cols&&(this._bufferService.buffer.lines.get(t+1).isWrapped=!1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 2:for(this._dirtyRowService.markDirty((t=this._bufferService.rows)-1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 3:var n=this._bufferService.buffer.lines.length-this._bufferService.rows;n>0&&(this._bufferService.buffer.lines.trimStart(n),this._bufferService.buffer.ybase=Math.max(this._bufferService.buffer.ybase-n,0),this._bufferService.buffer.ydisp=Math.max(this._bufferService.buffer.ydisp-n,0),this._onScroll.fire(0))}return!0},t.prototype.eraseInLine=function(e){switch(this._restrictCursor(this._bufferService.cols),e.params[0]){case 0:this._eraseInBufferLine(this._bufferService.buffer.y,this._bufferService.buffer.x,this._bufferService.cols);break;case 1:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.buffer.x+1);break;case 2:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.cols)}return this._dirtyRowService.markDirty(this._bufferService.buffer.y),!0},t.prototype.insertLines=function(e){this._restrictCursor();var t=e.params[0]||1,n=this._bufferService.buffer;if(n.y>n.scrollBottom||n.yn.scrollBottom||n.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.y0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(a.C0.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(a.C0.ESC+"[?6c")),!0},t.prototype.sendDeviceAttributesSecondary=function(e){return e.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(a.C0.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(a.C0.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(e.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(a.C0.ESC+"[>83;40003;0c")),!0},t.prototype._is=function(e){return 0===(this._optionsService.options.termName+"").indexOf(e)},t.prototype.setMode=function(e){for(var t=0;t=2||2===i[1]&&o+r>=5)break;i[1]&&(r=1)}while(++o+t5)&&(e=1),t.extended.underlineStyle=e,t.fg|=268435456,0===e&&(t.fg&=-268435457),t.updateExtended()},t.prototype.charAttributes=function(e){if(1===e.length&&0===e.params[0])return this._curAttrData.fg=h.DEFAULT_ATTR_DATA.fg,this._curAttrData.bg=h.DEFAULT_ATTR_DATA.bg,!0;for(var t,n=e.length,i=this._curAttrData,r=0;r=30&&t<=37?(i.fg&=-50331904,i.fg|=16777216|t-30):t>=40&&t<=47?(i.bg&=-50331904,i.bg|=16777216|t-40):t>=90&&t<=97?(i.fg&=-50331904,i.fg|=16777224|t-90):t>=100&&t<=107?(i.bg&=-50331904,i.bg|=16777224|t-100):0===t?(i.fg=h.DEFAULT_ATTR_DATA.fg,i.bg=h.DEFAULT_ATTR_DATA.bg):1===t?i.fg|=134217728:3===t?i.bg|=67108864:4===t?(i.fg|=268435456,this._processUnderline(e.hasSubParams(r)?e.getSubParams(r)[0]:1,i)):5===t?i.fg|=536870912:7===t?i.fg|=67108864:8===t?i.fg|=1073741824:2===t?i.bg|=134217728:21===t?this._processUnderline(2,i):22===t?(i.fg&=-134217729,i.bg&=-134217729):23===t?i.bg&=-67108865:24===t?i.fg&=-268435457:25===t?i.fg&=-536870913:27===t?i.fg&=-67108865:28===t?i.fg&=-1073741825:39===t?(i.fg&=-67108864,i.fg|=16777215&h.DEFAULT_ATTR_DATA.fg):49===t?(i.bg&=-67108864,i.bg|=16777215&h.DEFAULT_ATTR_DATA.bg):38===t||48===t||58===t?r+=this._extractColor(e,r,i):59===t?(i.extended=i.extended.clone(),i.extended.underlineColor=-1,i.updateExtended()):100===t?(i.fg&=-67108864,i.fg|=16777215&h.DEFAULT_ATTR_DATA.fg,i.bg&=-67108864,i.bg|=16777215&h.DEFAULT_ATTR_DATA.bg):this._logService.debug("Unknown SGR attribute: %d.",t);return!0},t.prototype.deviceStatus=function(e){switch(e.params[0]){case 5:this._coreService.triggerDataEvent(a.C0.ESC+"[0n");break;case 6:this._coreService.triggerDataEvent(a.C0.ESC+"["+(this._bufferService.buffer.y+1)+";"+(this._bufferService.buffer.x+1)+"R")}return!0},t.prototype.deviceStatusPrivate=function(e){switch(e.params[0]){case 6:this._coreService.triggerDataEvent(a.C0.ESC+"[?"+(this._bufferService.buffer.y+1)+";"+(this._bufferService.buffer.x+1)+"R")}return!0},t.prototype.softReset=function(e){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._bufferService.buffer.scrollTop=0,this._bufferService.buffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=h.DEFAULT_ATTR_DATA.clone(),this._coreService.reset(),this._charsetService.reset(),this._bufferService.buffer.savedX=0,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0},t.prototype.setCursorStyle=function(e){var t=e.params[0]||1;switch(t){case 1:case 2:this._optionsService.options.cursorStyle="block";break;case 3:case 4:this._optionsService.options.cursorStyle="underline";break;case 5:case 6:this._optionsService.options.cursorStyle="bar"}return this._optionsService.options.cursorBlink=t%2==1,!0},t.prototype.setScrollRegion=function(e){var t,n=e.params[0]||1;return(e.length<2||(t=e.params[1])>this._bufferService.rows||0===t)&&(t=this._bufferService.rows),t>n&&(this._bufferService.buffer.scrollTop=n-1,this._bufferService.buffer.scrollBottom=t-1,this._setCursor(0,0)),!0},t.prototype.windowOptions=function(e){if(!S(e.params[0],this._optionsService.options.windowOptions))return!0;var t=e.length>1?e.params[1]:0;switch(e.params[0]){case 14:2!==t&&this._onRequestWindowsOptionsReport.fire(o.GET_WIN_SIZE_PIXELS);break;case 16:this._onRequestWindowsOptionsReport.fire(o.GET_CELL_SIZE_PIXELS);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(a.C0.ESC+"[8;"+this._bufferService.rows+";"+this._bufferService.cols+"t");break;case 22:0!==t&&2!==t||(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),0!==t&&1!==t||(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:0!==t&&2!==t||this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),0!==t&&1!==t||this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0},t.prototype.saveCursor=function(e){return this._bufferService.buffer.savedX=this._bufferService.buffer.x,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase+this._bufferService.buffer.y,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,!0},t.prototype.restoreCursor=function(e){return this._bufferService.buffer.x=this._bufferService.buffer.savedX||0,this._bufferService.buffer.y=Math.max(this._bufferService.buffer.savedY-this._bufferService.buffer.ybase,0),this._curAttrData.fg=this._bufferService.buffer.savedCurAttrData.fg,this._curAttrData.bg=this._bufferService.buffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._bufferService.buffer.savedCharset&&(this._charsetService.charset=this._bufferService.buffer.savedCharset),this._restrictCursor(),!0},t.prototype.setTitle=function(e){return this._windowTitle=e,this._onTitleChange.fire(e),!0},t.prototype.setIconName=function(e){return this._iconName=e,!0},t.prototype._parseAnsiColorChange=function(e){for(var t,n={colors:[]},i=/(\d+);rgb:([\da-f]{2})\/([\da-f]{2})\/([\da-f]{2})/gi;null!==(t=i.exec(e));)n.colors.push({colorIndex:parseInt(t[1]),red:parseInt(t[2],16),green:parseInt(t[3],16),blue:parseInt(t[4],16)});return 0===n.colors.length?null:n},t.prototype.setAnsiColor=function(e){var t=this._parseAnsiColorChange(e);return t?this._onAnsiColorChange.fire(t):this._logService.warn("Expected format ;rgb:// but got data: "+e),!0},t.prototype.nextLine=function(){return this._bufferService.buffer.x=0,this.index(),!0},t.prototype.keypadApplicationMode=function(){return this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0},t.prototype.keypadNumericMode=function(){return this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0},t.prototype.selectDefaultCharset=function(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,s.DEFAULT_CHARSET),!0},t.prototype.selectCharset=function(e){return 2!==e.length?(this.selectDefaultCharset(),!0):("/"===e[0]||this._charsetService.setgCharset(b[e[0]],s.CHARSETS[e[1]]||s.DEFAULT_CHARSET),!0)},t.prototype.index=function(){this._restrictCursor();var e=this._bufferService.buffer;return this._bufferService.buffer.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),this._restrictCursor(),!0},t.prototype.tabSet=function(){return this._bufferService.buffer.tabs[this._bufferService.buffer.x]=!0,!0},t.prototype.reverseIndex=function(){this._restrictCursor();var e=this._bufferService.buffer;return e.y===e.scrollTop?(e.lines.shiftElements(e.ybase+e.y,e.scrollBottom-e.scrollTop,1),e.lines.set(e.ybase+e.y,e.getBlankLine(this._eraseAttrData())),this._dirtyRowService.markRangeDirty(e.scrollTop,e.scrollBottom)):(e.y--,this._restrictCursor()),!0},t.prototype.fullReset=function(){return this._parser.reset(),this._onRequestReset.fire(),!0},t.prototype.reset=function(){this._curAttrData=h.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=h.DEFAULT_ATTR_DATA.clone()},t.prototype._eraseAttrData=function(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=67108863&this._curAttrData.bg,this._eraseAttrDataInternal},t.prototype.setgLevel=function(e){return this._charsetService.setgLevel(e),!0},t.prototype.screenAlignmentPattern=function(){var e=new m.CellData;e.content=1<<22|"E".charCodeAt(0),e.fg=this._curAttrData.fg,e.bg=this._curAttrData.bg;var t=this._bufferService.buffer;this._setCursor(0,0);for(var n=0;n=0},8273:function(e,t){function n(e,t,n,i){if(void 0===n&&(n=0),void 0===i&&(i=e.length),n>=e.length)return e;i=i>=e.length?e.length:(e.length+i)%e.length;for(var r=n=(e.length+n)%e.length;r>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=n;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},9092:function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.BufferStringIterator=t.Buffer=t.MAX_BUFFER_SIZE=void 0;var i=n(6349),r=n(8437),o=n(511),a=n(643),s=n(4634),l=n(4863),c=n(7116),u=n(3734);t.MAX_BUFFER_SIZE=4294967295;var d=function(){function e(e,t,n){this._hasScrollback=e,this._optionsService=t,this._bufferService=n,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.savedY=0,this.savedX=0,this.savedCurAttrData=r.DEFAULT_ATTR_DATA.clone(),this.savedCharset=c.DEFAULT_CHARSET,this.markers=[],this._nullCell=o.CellData.fromCharData([0,a.NULL_CELL_CHAR,a.NULL_CELL_WIDTH,a.NULL_CELL_CODE]),this._whitespaceCell=o.CellData.fromCharData([0,a.WHITESPACE_CELL_CHAR,a.WHITESPACE_CELL_WIDTH,a.WHITESPACE_CELL_CODE]),this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}return e.prototype.getNullCell=function(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new u.ExtendedAttrs),this._nullCell},e.prototype.getWhitespaceCell=function(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new u.ExtendedAttrs),this._whitespaceCell},e.prototype.getBlankLine=function(e,t){return new r.BufferLine(this._bufferService.cols,this.getNullCell(e),t)},Object.defineProperty(e.prototype,"hasScrollback",{get:function(){return this._hasScrollback&&this.lines.maxLength>this._rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isCursorInViewport",{get:function(){var e=this.ybase+this.y-this.ydisp;return e>=0&&et.MAX_BUFFER_SIZE?t.MAX_BUFFER_SIZE:n},e.prototype.fillViewportRows=function(e){if(0===this.lines.length){void 0===e&&(e=r.DEFAULT_ATTR_DATA);for(var t=this._rows;t--;)this.lines.push(this.getBlankLine(e))}},e.prototype.clear=function(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()},e.prototype.resize=function(e,t){var n=this.getNullCell(r.DEFAULT_ATTR_DATA),i=this._getCorrectBufferLength(t);if(i>this.lines.maxLength&&(this.lines.maxLength=i),this.lines.length>0){if(this._cols0&&this.lines.length<=this.ybase+this.y+a+1?(this.ybase--,a++,this.ydisp>0&&this.ydisp--):this.lines.push(new r.BufferLine(e,n)));else for(s=this._rows;s>t;s--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(i0&&(this.lines.trimStart(l),this.ybase=Math.max(this.ybase-l,0),this.ydisp=Math.max(this.ydisp-l,0),this.savedY=Math.max(this.savedY-l,0)),this.lines.maxLength=i}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),a&&(this.y+=a),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(o=0;othis._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))},e.prototype._reflowLarger=function(e,t){var n=s.reflowLargerGetLinesToRemove(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(r.DEFAULT_ATTR_DATA));if(n.length>0){var i=s.reflowLargerCreateNewLayout(this.lines,n);s.reflowLargerApplyNewLayout(this.lines,i.layout),this._reflowLargerAdjustViewport(e,t,i.countRemoved)}},e.prototype._reflowLargerAdjustViewport=function(e,t,n){for(var i=this.getNullCell(r.DEFAULT_ATTR_DATA),o=n;o-- >0;)0===this.ybase?(this.y>0&&this.y--,this.lines.length=0;a--){var l=this.lines.get(a);if(!(!l||!l.isWrapped&&l.getTrimmedLength()<=e)){for(var c=[l];l.isWrapped&&a>0;)l=this.lines.get(--a),c.unshift(l);var u=this.ybase+this.y;if(!(u>=a&&u0&&(i.push({start:a+c.length+o,newLines:m}),o+=m.length),c.push.apply(c,m);var y=p.length-1,_=p[y];0===_&&(_=p[--y]);for(var b=c.length-f-1,w=h;b>=0;){var S=Math.min(w,_);if(c[y].copyCellsFrom(c[b],w-S,_-S,S,!0),0==(_-=S)&&(_=p[--y]),0==(w-=S)){b--;var x=Math.max(b,0);w=s.getWrappedLineTrimmedLength(c,x,this._cols)}}for(g=0;g0;)0===this.ybase?this.y0){var k=[],T=[];for(g=0;g=0;g--)if(O&&O.start>Z+E){for(var P=O.newLines.length-1;P>=0;P--)this.lines.set(g--,O.newLines[P]);g++,k.push({index:Z+1,amount:O.newLines.length}),E+=O.newLines.length,O=i[++M]}else this.lines.set(g,T[Z--]);var I=0;for(g=k.length-1;g>=0;g--)k[g].index+=I,this.lines.onInsertEmitter.fire(k[g]),I+=k[g].amount;var q=Math.max(0,A+o-this.lines.maxLength);q>0&&this.lines.onTrimEmitter.fire(q)}},e.prototype.stringIndexToBufferIndex=function(e,t,n){for(void 0===n&&(n=!1);t;){var i=this.lines.get(e);if(!i)return[-1,-1];for(var r=n?i.getTrimmedLength():i.length,o=0;o0&&this.lines.get(t).isWrapped;)t--;for(;n+10;);return e>=this._cols?this._cols-1:e<0?0:e},e.prototype.nextStop=function(e){for(null==e&&(e=this.x);!this.tabs[++e]&&e=this._cols?this._cols-1:e<0?0:e},e.prototype.addMarker=function(e){var t=this,n=new l.Marker(e);return this.markers.push(n),n.register(this.lines.onTrim(function(e){n.line-=e,n.line<0&&n.dispose()})),n.register(this.lines.onInsert(function(e){n.line>=e.index&&(n.line+=e.amount)})),n.register(this.lines.onDelete(function(e){n.line>=e.index&&n.linee.index&&(n.line-=e.amount)})),n.register(n.onDispose(function(){return t._removeMarker(n)})),n},e.prototype._removeMarker=function(e){this.markers.splice(this.markers.indexOf(e),1)},e.prototype.iterator=function(e,t,n,i,r){return new h(this,e,t,n,i,r)},e}();t.Buffer=d;var h=function(){function e(e,t,n,i,r,o){void 0===n&&(n=0),void 0===i&&(i=e.lines.length),void 0===r&&(r=0),void 0===o&&(o=0),this._buffer=e,this._trimRight=t,this._startIndex=n,this._endIndex=i,this._startOverscan=r,this._endOverscan=o,this._startIndex<0&&(this._startIndex=0),this._endIndex>this._buffer.lines.length&&(this._endIndex=this._buffer.lines.length),this._current=this._startIndex}return e.prototype.hasNext=function(){return this._currentthis._endIndex+this._endOverscan&&(e.last=this._endIndex+this._endOverscan),e.first=Math.max(e.first,0),e.last=Math.min(e.last,this._buffer.lines.length);for(var t="",n=e.first;n<=e.last;++n)t+=this._buffer.translateBufferLineToString(n,this._trimRight);return this._current=e.last+1,{range:e,content:t}},e}();t.BufferStringIterator=h},8437:function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.BufferLine=t.DEFAULT_ATTR_DATA=void 0;var i=n(482),r=n(643),o=n(511),a=n(3734);t.DEFAULT_ATTR_DATA=Object.freeze(new a.AttributeData);var s=function(){function e(e,t,n){void 0===n&&(n=!1),this.isWrapped=n,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*e);for(var i=t||o.CellData.fromCharData([0,r.NULL_CELL_CHAR,r.NULL_CELL_WIDTH,r.NULL_CELL_CODE]),a=0;a>22,2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):n]},e.prototype.set=function(e,t){this._data[3*e+1]=t[r.CHAR_DATA_ATTR_INDEX],t[r.CHAR_DATA_CHAR_INDEX].length>1?(this._combined[e]=t[1],this._data[3*e+0]=2097152|e|t[r.CHAR_DATA_WIDTH_INDEX]<<22):this._data[3*e+0]=t[r.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[r.CHAR_DATA_WIDTH_INDEX]<<22},e.prototype.getWidth=function(e){return this._data[3*e+0]>>22},e.prototype.hasWidth=function(e){return 12582912&this._data[3*e+0]},e.prototype.getFg=function(e){return this._data[3*e+1]},e.prototype.getBg=function(e){return this._data[3*e+2]},e.prototype.hasContent=function(e){return 4194303&this._data[3*e+0]},e.prototype.getCodePoint=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):2097151&t},e.prototype.isCombined=function(e){return 2097152&this._data[3*e+0]},e.prototype.getString=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e]:2097151&t?i.stringFromCodePoint(2097151&t):""},e.prototype.loadCell=function(e,t){var n=3*e;return t.content=this._data[n+0],t.fg=this._data[n+1],t.bg=this._data[n+2],2097152&t.content&&(t.combinedData=this._combined[e]),268435456&t.bg&&(t.extended=this._extendedAttrs[e]),t},e.prototype.setCell=function(e,t){2097152&t.content&&(this._combined[e]=t.combinedData),268435456&t.bg&&(this._extendedAttrs[e]=t.extended),this._data[3*e+0]=t.content,this._data[3*e+1]=t.fg,this._data[3*e+2]=t.bg},e.prototype.setCellFromCodePoint=function(e,t,n,i,r,o){268435456&r&&(this._extendedAttrs[e]=o),this._data[3*e+0]=t|n<<22,this._data[3*e+1]=i,this._data[3*e+2]=r},e.prototype.addCodepointToCell=function(e,t){var n=this._data[3*e+0];2097152&n?this._combined[e]+=i.stringFromCodePoint(t):(2097151&n?(this._combined[e]=i.stringFromCodePoint(2097151&n)+i.stringFromCodePoint(t),n&=-2097152,n|=2097152):n=t|1<<22,this._data[3*e+0]=n)},e.prototype.insertCells=function(e,t,n,i){if((e%=this.length)&&2===this.getWidth(e-1)&&this.setCellFromCodePoint(e-1,0,1,(null==i?void 0:i.fg)||0,(null==i?void 0:i.bg)||0,(null==i?void 0:i.extended)||new a.ExtendedAttrs),t=0;--s)this.setCell(e+t+s,this.loadCell(e+s,r));for(s=0;sthis.length){var n=new Uint32Array(3*e);this.length&&n.set(3*e=e&&delete this._combined[o]}}else this._data=new Uint32Array(0),this._combined={};this.length=e}},e.prototype.fill=function(e){this._combined={},this._extendedAttrs={};for(var t=0;t=0;--e)if(4194303&this._data[3*e+0])return e+(this._data[3*e+0]>>22);return 0},e.prototype.copyCellsFrom=function(e,t,n,i,r){var o=e._data;if(r)for(var a=i-1;a>=0;a--)for(var s=0;s<3;s++)this._data[3*(n+a)+s]=o[3*(t+a)+s];else for(a=0;a=t&&(this._combined[c-t+n]=e._combined[c])}},e.prototype.translateToString=function(e,t,n){void 0===e&&(e=!1),void 0===t&&(t=0),void 0===n&&(n=this.length),e&&(n=Math.min(n,this.getTrimmedLength()));for(var o="";t>22||1}return o},e}();t.BufferLine=s},4841:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.getRangeLength=void 0,t.getRangeLength=function(e,t){if(e.start.y>e.end.y)throw new Error("Buffer range end ("+e.end.x+", "+e.end.y+") cannot be before start ("+e.start.x+", "+e.start.y+")");return t*(e.end.y-e.start.y)+(e.end.x-e.start.x+1)}},4634:function(e,t){function n(e,t,n){if(t===e.length-1)return e[t].getTrimmedLength();var i=!e[t].hasContent(n-1)&&1===e[t].getWidth(n-1),r=2===e[t+1].getWidth(0);return i&&r?n-1:n}Object.defineProperty(t,"__esModule",{value:!0}),t.getWrappedLineTrimmedLength=t.reflowSmallerGetNewLineLengths=t.reflowLargerApplyNewLayout=t.reflowLargerCreateNewLayout=t.reflowLargerGetLinesToRemove=void 0,t.reflowLargerGetLinesToRemove=function(e,t,i,r,o){for(var a=[],s=0;s=s&&r0&&(y>d||0===u[y].getTrimmedLength());y--)v++;v>0&&(a.push(s+u.length-v),a.push(v)),s+=u.length-1}}}return a},t.reflowLargerCreateNewLayout=function(e,t){for(var n=[],i=0,r=t[i],o=0,a=0;ac&&(a-=c,s++);var u=2===e[s].getWidth(a-1);u&&a--;var d=u?i-1:i;r.push(d),l+=d}return r},t.getWrappedLineTrimmedLength=n},5295:function(e,t,n){var i,r=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)});Object.defineProperty(t,"__esModule",{value:!0}),t.BufferSet=void 0;var o=n(9092),a=n(8460),s=function(e){function t(t,n){var i=e.call(this)||this;return i._optionsService=t,i._bufferService=n,i._onBufferActivate=i.register(new a.EventEmitter),i.reset(),i}return r(t,e),Object.defineProperty(t.prototype,"onBufferActivate",{get:function(){return this._onBufferActivate.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this._normal=new o.Buffer(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new o.Buffer(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this.setupTabStops()},Object.defineProperty(t.prototype,"alt",{get:function(){return this._alt},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"active",{get:function(){return this._activeBuffer},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"normal",{get:function(){return this._normal},enumerable:!1,configurable:!0}),t.prototype.activateNormalBuffer=function(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))},t.prototype.activateAltBuffer=function(e){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(e),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))},t.prototype.resize=function(e,t){this._normal.resize(e,t),this._alt.resize(e,t)},t.prototype.setupTabStops=function(e){this._normal.setupTabStops(e),this._alt.setupTabStops(e)},t}(n(844).Disposable);t.BufferSet=s},511:function(e,t,n){var i,r=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)});Object.defineProperty(t,"__esModule",{value:!0}),t.CellData=void 0;var o=n(482),a=n(643),s=n(3734),l=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new s.ExtendedAttrs,t.combinedData="",t}return r(t,e),t.fromCharData=function(e){var n=new t;return n.setFromCharData(e),n},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?o.stringFromCodePoint(2097151&this.content):""},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[a.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[a.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[a.CHAR_DATA_CHAR_INDEX].length){var n=e[a.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=n&&n<=56319){var i=e[a.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(n-55296)+i-56320+65536|e[a.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[a.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[a.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[a.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[a.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(s.AttributeData);t.CellData=l},643:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR="",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=" ",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},4863:function(e,t,n){var i,r=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)});Object.defineProperty(t,"__esModule",{value:!0}),t.Marker=void 0;var o=n(8460),a=function(e){function t(n){var i=e.call(this)||this;return i.line=n,i._id=t._nextId++,i.isDisposed=!1,i._onDispose=new o.EventEmitter,i}return r(t,e),Object.defineProperty(t.prototype,"id",{get:function(){return this._id},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onDispose",{get:function(){return this._onDispose.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),e.prototype.dispose.call(this))},t._nextId=1,t}(n(844).Disposable);t.Marker=a},7116:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.DEFAULT_CHARSET=t.CHARSETS=void 0,t.CHARSETS={},t.DEFAULT_CHARSET=t.CHARSETS.B,t.CHARSETS[0]={"`":"\u25c6",a:"\u2592",b:"\u2409",c:"\u240c",d:"\u240d",e:"\u240a",f:"\xb0",g:"\xb1",h:"\u2424",i:"\u240b",j:"\u2518",k:"\u2510",l:"\u250c",m:"\u2514",n:"\u253c",o:"\u23ba",p:"\u23bb",q:"\u2500",r:"\u23bc",s:"\u23bd",t:"\u251c",u:"\u2524",v:"\u2534",w:"\u252c",x:"\u2502",y:"\u2264",z:"\u2265","{":"\u03c0","|":"\u2260","}":"\xa3","~":"\xb7"},t.CHARSETS.A={"#":"\xa3"},t.CHARSETS.B=void 0,t.CHARSETS[4]={"#":"\xa3","@":"\xbe","[":"ij","\\":"\xbd","]":"|","{":"\xa8","|":"f","}":"\xbc","~":"\xb4"},t.CHARSETS.C=t.CHARSETS[5]={"[":"\xc4","\\":"\xd6","]":"\xc5","^":"\xdc","`":"\xe9","{":"\xe4","|":"\xf6","}":"\xe5","~":"\xfc"},t.CHARSETS.R={"#":"\xa3","@":"\xe0","[":"\xb0","\\":"\xe7","]":"\xa7","{":"\xe9","|":"\xf9","}":"\xe8","~":"\xa8"},t.CHARSETS.Q={"@":"\xe0","[":"\xe2","\\":"\xe7","]":"\xea","^":"\xee","`":"\xf4","{":"\xe9","|":"\xf9","}":"\xe8","~":"\xfb"},t.CHARSETS.K={"@":"\xa7","[":"\xc4","\\":"\xd6","]":"\xdc","{":"\xe4","|":"\xf6","}":"\xfc","~":"\xdf"},t.CHARSETS.Y={"#":"\xa3","@":"\xa7","[":"\xb0","\\":"\xe7","]":"\xe9","`":"\xf9","{":"\xe0","|":"\xf2","}":"\xe8","~":"\xec"},t.CHARSETS.E=t.CHARSETS[6]={"@":"\xc4","[":"\xc6","\\":"\xd8","]":"\xc5","^":"\xdc","`":"\xe4","{":"\xe6","|":"\xf8","}":"\xe5","~":"\xfc"},t.CHARSETS.Z={"#":"\xa3","@":"\xa7","[":"\xa1","\\":"\xd1","]":"\xbf","{":"\xb0","|":"\xf1","}":"\xe7"},t.CHARSETS.H=t.CHARSETS[7]={"@":"\xc9","[":"\xc4","\\":"\xd6","]":"\xc5","^":"\xdc","`":"\xe9","{":"\xe4","|":"\xf6","}":"\xe5","~":"\xfc"},t.CHARSETS["="]={"#":"\xf9","@":"\xe0","[":"\xe9","\\":"\xe7","]":"\xea","^":"\xee",_:"\xe8","`":"\xf4","{":"\xe4","|":"\xf6","}":"\xfc","~":"\xfb"}},2584:function(e,t){var n,i;Object.defineProperty(t,"__esModule",{value:!0}),t.C1=t.C0=void 0,(i=t.C0||(t.C0={})).NUL="\0",i.SOH="\x01",i.STX="\x02",i.ETX="\x03",i.EOT="\x04",i.ENQ="\x05",i.ACK="\x06",i.BEL="\x07",i.BS="\b",i.HT="\t",i.LF="\n",i.VT="\v",i.FF="\f",i.CR="\r",i.SO="\x0e",i.SI="\x0f",i.DLE="\x10",i.DC1="\x11",i.DC2="\x12",i.DC3="\x13",i.DC4="\x14",i.NAK="\x15",i.SYN="\x16",i.ETB="\x17",i.CAN="\x18",i.EM="\x19",i.SUB="\x1a",i.ESC="\x1b",i.FS="\x1c",i.GS="\x1d",i.RS="\x1e",i.US="\x1f",i.SP=" ",i.DEL="\x7f",(n=t.C1||(t.C1={})).PAD="\x80",n.HOP="\x81",n.BPH="\x82",n.NBH="\x83",n.IND="\x84",n.NEL="\x85",n.SSA="\x86",n.ESA="\x87",n.HTS="\x88",n.HTJ="\x89",n.VTS="\x8a",n.PLD="\x8b",n.PLU="\x8c",n.RI="\x8d",n.SS2="\x8e",n.SS3="\x8f",n.DCS="\x90",n.PU1="\x91",n.PU2="\x92",n.STS="\x93",n.CCH="\x94",n.MW="\x95",n.SPA="\x96",n.EPA="\x97",n.SOS="\x98",n.SGCI="\x99",n.SCI="\x9a",n.CSI="\x9b",n.ST="\x9c",n.OSC="\x9d",n.PM="\x9e",n.APC="\x9f"},7399:function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.evaluateKeyboardEvent=void 0;var i=n(2584),r={48:["0",")"],49:["1","!"],50:["2","@"],51:["3","#"],52:["4","$"],53:["5","%"],54:["6","^"],55:["7","&"],56:["8","*"],57:["9","("],186:[";",":"],187:["=","+"],188:[",","<"],189:["-","_"],190:[".",">"],191:["/","?"],192:["`","~"],219:["[","{"],220:["\\","|"],221:["]","}"],222:["'",'"']};t.evaluateKeyboardEvent=function(e,t,n,o){var a={type:0,cancel:!1,key:void 0},s=(e.shiftKey?1:0)|(e.altKey?2:0)|(e.ctrlKey?4:0)|(e.metaKey?8:0);switch(e.keyCode){case 0:"UIKeyInputUpArrow"===e.key?a.key=t?i.C0.ESC+"OA":i.C0.ESC+"[A":"UIKeyInputLeftArrow"===e.key?a.key=t?i.C0.ESC+"OD":i.C0.ESC+"[D":"UIKeyInputRightArrow"===e.key?a.key=t?i.C0.ESC+"OC":i.C0.ESC+"[C":"UIKeyInputDownArrow"===e.key&&(a.key=t?i.C0.ESC+"OB":i.C0.ESC+"[B");break;case 8:if(e.shiftKey){a.key=i.C0.BS;break}if(e.altKey){a.key=i.C0.ESC+i.C0.DEL;break}a.key=i.C0.DEL;break;case 9:if(e.shiftKey){a.key=i.C0.ESC+"[Z";break}a.key=i.C0.HT,a.cancel=!0;break;case 13:a.key=e.altKey?i.C0.ESC+i.C0.CR:i.C0.CR,a.cancel=!0;break;case 27:a.key=i.C0.ESC,e.altKey&&(a.key=i.C0.ESC+i.C0.ESC),a.cancel=!0;break;case 37:if(e.metaKey)break;s?(a.key=i.C0.ESC+"[1;"+(s+1)+"D",a.key===i.C0.ESC+"[1;3D"&&(a.key=i.C0.ESC+(n?"b":"[1;5D"))):a.key=t?i.C0.ESC+"OD":i.C0.ESC+"[D";break;case 39:if(e.metaKey)break;s?(a.key=i.C0.ESC+"[1;"+(s+1)+"C",a.key===i.C0.ESC+"[1;3C"&&(a.key=i.C0.ESC+(n?"f":"[1;5C"))):a.key=t?i.C0.ESC+"OC":i.C0.ESC+"[C";break;case 38:if(e.metaKey)break;s?(a.key=i.C0.ESC+"[1;"+(s+1)+"A",n||a.key!==i.C0.ESC+"[1;3A"||(a.key=i.C0.ESC+"[1;5A")):a.key=t?i.C0.ESC+"OA":i.C0.ESC+"[A";break;case 40:if(e.metaKey)break;s?(a.key=i.C0.ESC+"[1;"+(s+1)+"B",n||a.key!==i.C0.ESC+"[1;3B"||(a.key=i.C0.ESC+"[1;5B")):a.key=t?i.C0.ESC+"OB":i.C0.ESC+"[B";break;case 45:e.shiftKey||e.ctrlKey||(a.key=i.C0.ESC+"[2~");break;case 46:a.key=s?i.C0.ESC+"[3;"+(s+1)+"~":i.C0.ESC+"[3~";break;case 36:a.key=s?i.C0.ESC+"[1;"+(s+1)+"H":t?i.C0.ESC+"OH":i.C0.ESC+"[H";break;case 35:a.key=s?i.C0.ESC+"[1;"+(s+1)+"F":t?i.C0.ESC+"OF":i.C0.ESC+"[F";break;case 33:e.shiftKey?a.type=2:a.key=i.C0.ESC+"[5~";break;case 34:e.shiftKey?a.type=3:a.key=i.C0.ESC+"[6~";break;case 112:a.key=s?i.C0.ESC+"[1;"+(s+1)+"P":i.C0.ESC+"OP";break;case 113:a.key=s?i.C0.ESC+"[1;"+(s+1)+"Q":i.C0.ESC+"OQ";break;case 114:a.key=s?i.C0.ESC+"[1;"+(s+1)+"R":i.C0.ESC+"OR";break;case 115:a.key=s?i.C0.ESC+"[1;"+(s+1)+"S":i.C0.ESC+"OS";break;case 116:a.key=s?i.C0.ESC+"[15;"+(s+1)+"~":i.C0.ESC+"[15~";break;case 117:a.key=s?i.C0.ESC+"[17;"+(s+1)+"~":i.C0.ESC+"[17~";break;case 118:a.key=s?i.C0.ESC+"[18;"+(s+1)+"~":i.C0.ESC+"[18~";break;case 119:a.key=s?i.C0.ESC+"[19;"+(s+1)+"~":i.C0.ESC+"[19~";break;case 120:a.key=s?i.C0.ESC+"[20;"+(s+1)+"~":i.C0.ESC+"[20~";break;case 121:a.key=s?i.C0.ESC+"[21;"+(s+1)+"~":i.C0.ESC+"[21~";break;case 122:a.key=s?i.C0.ESC+"[23;"+(s+1)+"~":i.C0.ESC+"[23~";break;case 123:a.key=s?i.C0.ESC+"[24;"+(s+1)+"~":i.C0.ESC+"[24~";break;default:if(!e.ctrlKey||e.shiftKey||e.altKey||e.metaKey)if(n&&!o||!e.altKey||e.metaKey)!n||e.altKey||e.ctrlKey||e.shiftKey||!e.metaKey?e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.keyCode>=48&&1===e.key.length?a.key=e.key:e.key&&e.ctrlKey&&"_"===e.key&&(a.key=i.C0.US):65===e.keyCode&&(a.type=1);else{var l=r[e.keyCode],c=l&&l[e.shiftKey?1:0];c?a.key=i.C0.ESC+c:e.keyCode>=65&&e.keyCode<=90&&(a.key=i.C0.ESC+String.fromCharCode(e.ctrlKey?e.keyCode-64:e.keyCode+32))}else e.keyCode>=65&&e.keyCode<=90?a.key=String.fromCharCode(e.keyCode-64):32===e.keyCode?a.key=i.C0.NUL:e.keyCode>=51&&e.keyCode<=55?a.key=String.fromCharCode(e.keyCode-51+27):56===e.keyCode?a.key=i.C0.DEL:219===e.keyCode?a.key=i.C0.ESC:220===e.keyCode?a.key=i.C0.FS:221===e.keyCode&&(a.key=i.C0.GS)}return a}},482:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,n){void 0===t&&(t=0),void 0===n&&(n=e.length);for(var i="",r=t;r65535?(o-=65536,i+=String.fromCharCode(55296+(o>>10))+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i};var n=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var n=e.length;if(!n)return 0;var i=0,r=0;this._interim&&(56320<=(s=e.charCodeAt(r++))&&s<=57343?t[i++]=1024*(this._interim-55296)+s-56320+65536:(t[i++]=this._interim,t[i++]=s),this._interim=0);for(var o=r;o=n)return this._interim=a,i;var s;56320<=(s=e.charCodeAt(o))&&s<=57343?t[i++]=1024*(a-55296)+s-56320+65536:(t[i++]=a,t[i++]=s)}else 65279!==a&&(t[i++]=a)}return i},e}();t.StringToUtf32=n;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var n=e.length;if(!n)return 0;var i,r,o,a,s=0,l=0,c=0;if(this.interim[0]){var u=!1,d=this.interim[0];d&=192==(224&d)?31:224==(240&d)?15:7;for(var h=0,p=void 0;(p=63&this.interim[++h])&&h<4;)d<<=6,d|=p;for(var f=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,m=f-h;c=n)return 0;if(128!=(192&(p=e[c++]))){c--,u=!0;break}this.interim[h++]=p,d<<=6,d|=63&p}u||(2===f?d<128?c--:t[s++]=d:3===f?d<2048||d>=55296&&d<=57343||65279===d||(t[s++]=d):d<65536||d>1114111||(t[s++]=d)),this.interim.fill(0)}for(var g=n-4,v=c;v=n)return this.interim[0]=i,s;if(128!=(192&(r=e[v++]))){v--;continue}if((l=(31&i)<<6|63&r)<128){v--;continue}t[s++]=l}else if(224==(240&i)){if(v>=n)return this.interim[0]=i,s;if(128!=(192&(r=e[v++]))){v--;continue}if(v>=n)return this.interim[0]=i,this.interim[1]=r,s;if(128!=(192&(o=e[v++]))){v--;continue}if((l=(15&i)<<12|(63&r)<<6|63&o)<2048||l>=55296&&l<=57343||65279===l)continue;t[s++]=l}else if(240==(248&i)){if(v>=n)return this.interim[0]=i,s;if(128!=(192&(r=e[v++]))){v--;continue}if(v>=n)return this.interim[0]=i,this.interim[1]=r,s;if(128!=(192&(o=e[v++]))){v--;continue}if(v>=n)return this.interim[0]=i,this.interim[1]=r,this.interim[2]=o,s;if(128!=(192&(a=e[v++]))){v--;continue}if((l=(7&i)<<18|(63&r)<<12|(63&o)<<6|63&a)<65536||l>1114111)continue;t[s++]=l}}return s},e}();t.Utf8ToUtf32=i},225:function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.UnicodeV6=void 0;var i,r=n(8273),o=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],a=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],s=function(){function e(){if(this.version="6",!i){i=new Uint8Array(65536),r.fill(i,1),i[0]=0,r.fill(i,0,1,32),r.fill(i,0,127,160),r.fill(i,2,4352,4448),i[9001]=2,i[9002]=2,r.fill(i,2,11904,42192),i[12351]=1,r.fill(i,2,44032,55204),r.fill(i,2,63744,64256),r.fill(i,2,65040,65050),r.fill(i,2,65072,65136),r.fill(i,2,65280,65377),r.fill(i,2,65504,65511);for(var e=0;et[r][1])return!1;for(;r>=i;)if(e>t[n=i+r>>1][1])i=n+1;else{if(!(e=131072&&e<=196605||e>=196608&&e<=262141?2:1},e}();t.UnicodeV6=s},5981:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.WriteBuffer=void 0;var n="undefined"==typeof queueMicrotask?function(e){Promise.resolve().then(e)}:queueMicrotask,i=function(){function e(e){this._action=e,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0}return e.prototype.writeSync=function(e,t){if(void 0!==t&&this._syncCalls>t)this._syncCalls=0;else if(this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(void 0),this._syncCalls++,!this._isSyncWriting){var n;for(this._isSyncWriting=!0;n=this._writeBuffer.shift();){this._action(n);var i=this._callbacks.shift();i&&i()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}},e.prototype.write=function(e,t){var n=this;if(this._pendingData>5e7)throw new Error("write data discarded, use flow control to avoid losing data");this._writeBuffer.length||(this._bufferOffset=0,setTimeout(function(){return n._innerWrite()})),this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t)},e.prototype._innerWrite=function(e,t){var i=this;void 0===e&&(e=0),void 0===t&&(t=!0);for(var r=e||Date.now();this._writeBuffer.length>this._bufferOffset;){var o=this._writeBuffer[this._bufferOffset],a=this._action(o,t);if(a)return void a.catch(function(e){return n(function(){throw e}),Promise.resolve(!1)}).then(function(e){return Date.now()-r>=12?setTimeout(function(){return i._innerWrite(0,e)}):i._innerWrite(r,e)});var s=this._callbacks[this._bufferOffset];if(s&&s(),this._bufferOffset++,this._pendingData-=o.length,Date.now()-r>=12)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>50&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout(function(){return i._innerWrite()})):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0)},e}();t.WriteBuffer=i},5770:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.PAYLOAD_LIMIT=void 0,t.PAYLOAD_LIMIT=1e7},6351:function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.DcsHandler=t.DcsParser=void 0;var i=n(482),r=n(8742),o=n(5770),a=[],s=function(){function e(){this._handlers=Object.create(null),this._active=a,this._ident=0,this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=a},e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var n=this._handlers[e];return n.push(t),{dispose:function(){var e=n.indexOf(t);-1!==e&&n.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.reset=function(){if(this._active.length)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].unhook(!1);this._stack.paused=!1,this._active=a,this._ident=0},e.prototype.hook=function(e,t){if(this.reset(),this._ident=e,this._active=this._handlers[e]||a,this._active.length)for(var n=this._active.length-1;n>=0;n--)this._active[n].hook(t);else this._handlerFb(this._ident,"HOOK",t)},e.prototype.put=function(e,t,n){if(this._active.length)for(var r=this._active.length-1;r>=0;r--)this._active[r].put(e,t,n);else this._handlerFb(this._ident,"PUT",i.utf32ToString(e,t,n))},e.prototype.unhook=function(e,t){if(void 0===t&&(t=!0),this._active.length){var n=!1,i=this._active.length-1,r=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,n=t,r=this._stack.fallThrough,this._stack.paused=!1),!r&&!1===n){for(;i>=0&&!0!==(n=this._active[i].unhook(e));i--)if(n instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,n;i--}for(;i>=0;i--)if((n=this._active[i].unhook(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,n}else this._handlerFb(this._ident,"UNHOOK",e);this._active=a,this._ident=0},e}();t.DcsParser=s;var l=new r.Params;l.addParam(0);var c=function(){function e(e){this._handler=e,this._data="",this._params=l,this._hitLimit=!1}return e.prototype.hook=function(e){this._params=e.length>1||e.params[0]?e.clone():l,this._data="",this._hitLimit=!1},e.prototype.put=function(e,t,n){this._hitLimit||(this._data+=i.utf32ToString(e,t,n),this._data.length>o.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))},e.prototype.unhook=function(e){var t=this,n=!1;if(this._hitLimit)n=!1;else if(e&&(n=this._handler(this._data,this._params))instanceof Promise)return n.then(function(e){return t._params=l,t._data="",t._hitLimit=!1,e});return this._params=l,this._data="",this._hitLimit=!1,n},e}();t.DcsHandler=c},2015:function(e,t,n){var i,r=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)});Object.defineProperty(t,"__esModule",{value:!0}),t.EscapeSequenceParser=t.VT500_TRANSITION_TABLE=t.TransitionTable=void 0;var o=n(844),a=n(8273),s=n(8742),l=n(6242),c=n(6351),u=function(){function e(e){this.table=new Uint8Array(e)}return e.prototype.setDefault=function(e,t){a.fill(this.table,e<<4|t)},e.prototype.add=function(e,t,n,i){this.table[t<<8|e]=n<<4|i},e.prototype.addMany=function(e,t,n,i){for(var r=0;r1)throw new Error("only one byte as prefix supported");if((n=e.prefix.charCodeAt(0))&&60>n||n>63)throw new Error("prefix must be in range 0x3c .. 0x3f")}if(e.intermediates){if(e.intermediates.length>2)throw new Error("only two bytes as intermediates are supported");for(var i=0;ir||r>47)throw new Error("intermediate must be in range 0x20 .. 0x2f");n<<=8,n|=r}}if(1!==e.final.length)throw new Error("final must be a single byte");var o=e.final.charCodeAt(0);if(t[0]>o||o>t[1])throw new Error("final must be in range "+t[0]+" .. "+t[1]);return(n<<=8)|o},n.prototype.identToString=function(e){for(var t=[];e;)t.push(String.fromCharCode(255&e)),e>>=8;return t.reverse().join("")},n.prototype.dispose=function(){this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null),this._oscParser.dispose(),this._dcsParser.dispose()},n.prototype.setPrintHandler=function(e){this._printHandler=e},n.prototype.clearPrintHandler=function(){this._printHandler=this._printHandlerFb},n.prototype.registerEscHandler=function(e,t){var n=this._identifier(e,[48,126]);void 0===this._escHandlers[n]&&(this._escHandlers[n]=[]);var i=this._escHandlers[n];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},n.prototype.clearEscHandler=function(e){this._escHandlers[this._identifier(e,[48,126])]&&delete this._escHandlers[this._identifier(e,[48,126])]},n.prototype.setEscHandlerFallback=function(e){this._escHandlerFb=e},n.prototype.setExecuteHandler=function(e,t){this._executeHandlers[e.charCodeAt(0)]=t},n.prototype.clearExecuteHandler=function(e){this._executeHandlers[e.charCodeAt(0)]&&delete this._executeHandlers[e.charCodeAt(0)]},n.prototype.setExecuteHandlerFallback=function(e){this._executeHandlerFb=e},n.prototype.registerCsiHandler=function(e,t){var n=this._identifier(e);void 0===this._csiHandlers[n]&&(this._csiHandlers[n]=[]);var i=this._csiHandlers[n];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},n.prototype.clearCsiHandler=function(e){this._csiHandlers[this._identifier(e)]&&delete this._csiHandlers[this._identifier(e)]},n.prototype.setCsiHandlerFallback=function(e){this._csiHandlerFb=e},n.prototype.registerDcsHandler=function(e,t){return this._dcsParser.registerHandler(this._identifier(e),t)},n.prototype.clearDcsHandler=function(e){this._dcsParser.clearHandler(this._identifier(e))},n.prototype.setDcsHandlerFallback=function(e){this._dcsParser.setHandlerFallback(e)},n.prototype.registerOscHandler=function(e,t){return this._oscParser.registerHandler(e,t)},n.prototype.clearOscHandler=function(e){this._oscParser.clearHandler(e)},n.prototype.setOscHandlerFallback=function(e){this._oscParser.setHandlerFallback(e)},n.prototype.setErrorHandler=function(e){this._errorHandler=e},n.prototype.clearErrorHandler=function(){this._errorHandler=this._errorHandlerFb},n.prototype.reset=function(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingCodepoint=0,0!==this._parseStack.state&&(this._parseStack.state=2,this._parseStack.handlers=[])},n.prototype._preserveStack=function(e,t,n,i,r){this._parseStack.state=e,this._parseStack.handlers=t,this._parseStack.handlerPos=n,this._parseStack.transition=i,this._parseStack.chunkPos=r},n.prototype.parse=function(e,t,n){var i,r=0,o=0,a=0;if(this._parseStack.state)if(2===this._parseStack.state)this._parseStack.state=0,a=this._parseStack.chunkPos+1;else{if(void 0===n||1===this._parseStack.state)throw this._parseStack.state=1,new Error("improper continuation due to previous async handler, giving up parsing");var s=this._parseStack.handlers,l=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(!1===n&&l>-1)for(;l>=0&&!0!==(i=s[l](this._params));l--)if(i instanceof Promise)return this._parseStack.handlerPos=l,i;this._parseStack.handlers=[];break;case 4:if(!1===n&&l>-1)for(;l>=0&&!0!==(i=s[l]());l--)if(i instanceof Promise)return this._parseStack.handlerPos=l,i;this._parseStack.handlers=[];break;case 6:if(i=this._dcsParser.unhook(24!==(r=e[this._parseStack.chunkPos])&&26!==r,n))return i;27===r&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(i=this._oscParser.end(24!==(r=e[this._parseStack.chunkPos])&&26!==r,n))return i;27===r&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,a=this._parseStack.chunkPos+1,this.precedingCodepoint=0,this.currentState=15&this._parseStack.transition}for(var c=a;c>4){case 2:for(var u=c+1;;++u){if(u>=t||(r=e[u])<32||r>126&&r=t||(r=e[u])<32||r>126&&r=t||(r=e[u])<32||r>126&&r=t||(r=e[u])<32||r>126&&r=0&&!0!==(i=s[h](this._params));h--)if(i instanceof Promise)return this._preserveStack(3,s,h,o,c),i;h<0&&this._csiHandlerFb(this._collect<<8|r,this._params),this.precedingCodepoint=0;break;case 8:do{switch(r){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(r-48)}}while(++c47&&r<60);c--;break;case 9:this._collect<<=8,this._collect|=r;break;case 10:for(var p=this._escHandlers[this._collect<<8|r],f=p?p.length-1:-1;f>=0&&!0!==(i=p[f]());f--)if(i instanceof Promise)return this._preserveStack(4,p,f,o,c),i;f<0&&this._escHandlerFb(this._collect<<8|r),this.precedingCodepoint=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|r,this._params);break;case 13:for(var m=c+1;;++m)if(m>=t||24===(r=e[m])||26===r||27===r||r>127&&r=t||(r=e[g])<32||r>127&&r=0;--e)this._active[e].end(!1);this._stack.paused=!1,this._active=o,this._id=-1,this._state=0},e.prototype._start=function(){if(this._active=this._handlers[this._id]||o,this._active.length)for(var e=this._active.length-1;e>=0;e--)this._active[e].start();else this._handlerFb(this._id,"START")},e.prototype._put=function(e,t,n){if(this._active.length)for(var i=this._active.length-1;i>=0;i--)this._active[i].put(e,t,n);else this._handlerFb(this._id,"PUT",r.utf32ToString(e,t,n))},e.prototype.start=function(){this.reset(),this._state=1},e.prototype.put=function(e,t,n){if(3!==this._state){if(1===this._state)for(;t0&&this._put(e,t,n)}},e.prototype.end=function(e,t){if(void 0===t&&(t=!0),0!==this._state){if(3!==this._state)if(1===this._state&&this._start(),this._active.length){var n=!1,i=this._active.length-1,r=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,n=t,r=this._stack.fallThrough,this._stack.paused=!1),!r&&!1===n){for(;i>=0&&!0!==(n=this._active[i].end(e));i--)if(n instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,n;i--}for(;i>=0;i--)if((n=this._active[i].end(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,n}else this._handlerFb(this._id,"END",e);this._active=o,this._id=-1,this._state=0}},e}();t.OscParser=a;var s=function(){function e(e){this._handler=e,this._data="",this._hitLimit=!1}return e.prototype.start=function(){this._data="",this._hitLimit=!1},e.prototype.put=function(e,t,n){this._hitLimit||(this._data+=r.utf32ToString(e,t,n),this._data.length>i.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))},e.prototype.end=function(e){var t=this,n=!1;if(this._hitLimit)n=!1;else if(e&&(n=this._handler(this._data))instanceof Promise)return n.then(function(e){return t._data="",t._hitLimit=!1,e});return this._data="",this._hitLimit=!1,n},e}();t.OscHandler=s},8742:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.Params=void 0;var n=2147483647,i=function(){function e(e,t){if(void 0===e&&(e=32),void 0===t&&(t=32),this.maxLength=e,this.maxSubParamsLength=t,t>256)throw new Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(e),this.length=0,this._subParams=new Int32Array(t),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(e),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}return e.fromArray=function(t){var n=new e;if(!t.length)return n;for(var i=t[0]instanceof Array?1:0;i>8,i=255&this._subParamsIdx[t];i-n>0&&e.push(Array.prototype.slice.call(this._subParams,n,i))}return e},e.prototype.reset=function(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1},e.prototype.addParam=function(e){if(this._digitIsSub=!1,this.length>=this.maxLength)this._rejectDigits=!0;else{if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=e>n?n:e}},e.prototype.addSubParam=function(e){if(this._digitIsSub=!0,this.length)if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength)this._rejectSubDigits=!0;else{if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=e>n?n:e,this._subParamsIdx[this.length-1]++}},e.prototype.hasSubParams=function(e){return(255&this._subParamsIdx[e])-(this._subParamsIdx[e]>>8)>0},e.prototype.getSubParams=function(e){var t=this._subParamsIdx[e]>>8,n=255&this._subParamsIdx[e];return n-t>0?this._subParams.subarray(t,n):null},e.prototype.getSubParamsAll=function(){for(var e={},t=0;t>8,i=255&this._subParamsIdx[t];i-n>0&&(e[t]=this._subParams.slice(n,i))}return e},e.prototype.addDigit=function(e){var t;if(!(this._rejectDigits||!(t=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)){var i=this._digitIsSub?this._subParams:this.params,r=i[t-1];i[t-1]=~r?Math.min(10*r+e,n):e}},e}();t.Params=i},744:function(e,t,n){var i,r=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),o=this&&this.__decorate||function(e,t,n,i){var r,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},a=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.BufferService=t.MINIMUM_ROWS=t.MINIMUM_COLS=void 0;var s=n(2585),l=n(5295),c=n(8460),u=n(844);t.MINIMUM_COLS=2,t.MINIMUM_ROWS=1;var d=function(e){function n(n){var i=e.call(this)||this;return i._optionsService=n,i.isUserScrolling=!1,i._onResize=new c.EventEmitter,i._onScroll=new c.EventEmitter,i.cols=Math.max(n.options.cols,t.MINIMUM_COLS),i.rows=Math.max(n.options.rows,t.MINIMUM_ROWS),i.buffers=new l.BufferSet(n,i),i}return r(n,e),Object.defineProperty(n.prototype,"onResize",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"onScroll",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"buffer",{get:function(){return this.buffers.active},enumerable:!1,configurable:!0}),n.prototype.dispose=function(){e.prototype.dispose.call(this),this.buffers.dispose()},n.prototype.resize=function(e,t){this.cols=e,this.rows=t,this.buffers.resize(e,t),this.buffers.setupTabStops(this.cols),this._onResize.fire({cols:e,rows:t})},n.prototype.reset=function(){this.buffers.reset(),this.isUserScrolling=!1},n.prototype.scroll=function(e,t){void 0===t&&(t=!1);var n,i=this.buffer;(n=this._cachedBlankLine)&&n.length===this.cols&&n.getFg(0)===e.fg&&n.getBg(0)===e.bg||(n=i.getBlankLine(e,t),this._cachedBlankLine=n),n.isWrapped=t;var r=i.ybase+i.scrollTop,o=i.ybase+i.scrollBottom;if(0===i.scrollTop){var a=i.lines.isFull;o===i.lines.length-1?a?i.lines.recycle().copyFrom(n):i.lines.push(n.clone()):i.lines.splice(o+1,0,n.clone()),a?this.isUserScrolling&&(i.ydisp=Math.max(i.ydisp-1,0)):(i.ybase++,this.isUserScrolling||i.ydisp++)}else i.lines.shiftElements(r+1,o-r+1-1,-1),i.lines.set(o,n.clone());this.isUserScrolling||(i.ydisp=i.ybase),this._onScroll.fire(i.ydisp)},n.prototype.scrollLines=function(e,t,n){var i=this.buffer;if(e<0){if(0===i.ydisp)return;this.isUserScrolling=!0}else e+i.ydisp>=i.ybase&&(this.isUserScrolling=!1);var r=i.ydisp;i.ydisp=Math.max(Math.min(i.ydisp+e,i.ybase),0),r!==i.ydisp&&(t||this._onScroll.fire(i.ydisp))},n.prototype.scrollPages=function(e){this.scrollLines(e*(this.rows-1))},n.prototype.scrollToTop=function(){this.scrollLines(-this.buffer.ydisp)},n.prototype.scrollToBottom=function(){this.scrollLines(this.buffer.ybase-this.buffer.ydisp)},n.prototype.scrollToLine=function(e){var t=e-this.buffer.ydisp;0!==t&&this.scrollLines(t)},o([a(0,s.IOptionsService)],n)}(u.Disposable);t.BufferService=d},7994:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.CharsetService=void 0;var n=function(){function e(){this.glevel=0,this._charsets=[]}return e.prototype.reset=function(){this.charset=void 0,this._charsets=[],this.glevel=0},e.prototype.setgLevel=function(e){this.glevel=e,this.charset=this._charsets[e]},e.prototype.setgCharset=function(e,t){this._charsets[e]=t,this.glevel===e&&(this.charset=t)},e}();t.CharsetService=n},1753:function(e,t,n){var i=this&&this.__decorate||function(e,t,n,i){var r,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},r=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CoreMouseService=void 0;var o=n(2585),a=n(8460),s={NONE:{events:0,restrict:function(){return!1}},X10:{events:1,restrict:function(e){return 4!==e.button&&1===e.action&&(e.ctrl=!1,e.alt=!1,e.shift=!1,!0)}},VT200:{events:19,restrict:function(e){return 32!==e.action}},DRAG:{events:23,restrict:function(e){return 32!==e.action||3!==e.button}},ANY:{events:31,restrict:function(e){return!0}}};function l(e,t){var n=(e.ctrl?16:0)|(e.shift?4:0)|(e.alt?8:0);return 4===e.button?(n|=64,n|=e.action):(n|=3&e.button,4&e.button&&(n|=64),8&e.button&&(n|=128),32===e.action?n|=32:0!==e.action||t||(n|=3)),n}var c=String.fromCharCode,u={DEFAULT:function(e){var t=[l(e,!1)+32,e.col+32,e.row+32];return t[0]>255||t[1]>255||t[2]>255?"":"\x1b[M"+c(t[0])+c(t[1])+c(t[2])},SGR:function(e){var t=0===e.action&&4!==e.button?"m":"M";return"\x1b[<"+l(e,!0)+";"+e.col+";"+e.row+t}},d=function(){function e(e,t){this._bufferService=e,this._coreService=t,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._onProtocolChange=new a.EventEmitter,this._lastEvent=null;for(var n=0,i=Object.keys(s);n=this._bufferService.cols||e.row<0||e.row>=this._bufferService.rows)return!1;if(4===e.button&&32===e.action)return!1;if(3===e.button&&32!==e.action)return!1;if(4!==e.button&&(2===e.action||3===e.action))return!1;if(e.col++,e.row++,32===e.action&&this._lastEvent&&this._compareEvents(this._lastEvent,e))return!1;if(!this._protocols[this._activeProtocol].restrict(e))return!1;var t=this._encodings[this._activeEncoding](e);return t&&("DEFAULT"===this._activeEncoding?this._coreService.triggerBinaryEvent(t):this._coreService.triggerDataEvent(t,!0)),this._lastEvent=e,!0},e.prototype.explainEvents=function(e){return{down:!!(1&e),up:!!(2&e),drag:!!(4&e),move:!!(8&e),wheel:!!(16&e)}},e.prototype._compareEvents=function(e,t){return e.col===t.col&&e.row===t.row&&e.button===t.button&&e.action===t.action&&e.ctrl===t.ctrl&&e.alt===t.alt&&e.shift===t.shift},i([r(0,o.IBufferService),r(1,o.ICoreService)],e)}();t.CoreMouseService=d},6975:function(e,t,n){var i,r=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),o=this&&this.__decorate||function(e,t,n,i){var r,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},a=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CoreService=void 0;var s=n(2585),l=n(8460),c=n(1439),u=n(844),d=Object.freeze({insertMode:!1}),h=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,origin:!1,reverseWraparound:!1,sendFocus:!1,wraparound:!0}),p=function(e){function t(t,n,i,r){var o=e.call(this)||this;return o._bufferService=n,o._logService=i,o._optionsService=r,o.isCursorInitialized=!1,o.isCursorHidden=!1,o._onData=o.register(new l.EventEmitter),o._onUserInput=o.register(new l.EventEmitter),o._onBinary=o.register(new l.EventEmitter),o._scrollToBottom=t,o.register({dispose:function(){return o._scrollToBottom=void 0}}),o.modes=c.clone(d),o.decPrivateModes=c.clone(h),o}return r(t,e),Object.defineProperty(t.prototype,"onData",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onUserInput",{get:function(){return this._onUserInput.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBinary",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this.modes=c.clone(d),this.decPrivateModes=c.clone(h)},t.prototype.triggerDataEvent=function(e,t){if(void 0===t&&(t=!1),!this._optionsService.options.disableStdin){var n=this._bufferService.buffer;n.ybase!==n.ydisp&&this._scrollToBottom(),t&&this._onUserInput.fire(),this._logService.debug('sending data "'+e+'"',function(){return e.split("").map(function(e){return e.charCodeAt(0)})}),this._onData.fire(e)}},t.prototype.triggerBinaryEvent=function(e){this._optionsService.options.disableStdin||(this._logService.debug('sending binary "'+e+'"',function(){return e.split("").map(function(e){return e.charCodeAt(0)})}),this._onBinary.fire(e))},o([a(1,s.IBufferService),a(2,s.ILogService),a(3,s.IOptionsService)],t)}(u.Disposable);t.CoreService=p},3730:function(e,t,n){var i=this&&this.__decorate||function(e,t,n,i){var r,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},r=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DirtyRowService=void 0;var o=n(2585),a=function(){function e(e){this._bufferService=e,this.clearRange()}return Object.defineProperty(e.prototype,"start",{get:function(){return this._start},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"end",{get:function(){return this._end},enumerable:!1,configurable:!0}),e.prototype.clearRange=function(){this._start=this._bufferService.buffer.y,this._end=this._bufferService.buffer.y},e.prototype.markDirty=function(e){ethis._end&&(this._end=e)},e.prototype.markRangeDirty=function(e,t){if(e>t){var n=e;e=t,t=n}ethis._end&&(this._end=t)},e.prototype.markAllDirty=function(){this.markRangeDirty(0,this._bufferService.rows-1)},i([r(0,o.IBufferService)],e)}();t.DirtyRowService=a},4348:function(e,t,n){var i=this&&this.__spreadArray||function(e,t){for(var n=0,i=t.length,r=e.length;n0?r[0].index:t.length;if(t.length!==d)throw new Error("[createInstance] First service dependency of "+e.name+" at position "+(d+1)+" conflicts with "+t.length+" static arguments");return new(e.bind.apply(e,i([void 0],i(i([],t),a))))},e}();t.InstantiationService=s},7866:function(e,t,n){var i=this&&this.__decorate||function(e,t,n,i){var r,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},r=this&&this.__param||function(e,t){return function(n,i){t(n,i,e)}},o=this&&this.__spreadArray||function(e,t){for(var n=0,i=t.length,r=e.length;n=n)return t+this.wcwidth(r);var o=e.charCodeAt(i);56320<=o&&o<=57343?r=1024*(r-55296)+o-56320+65536:t+=this.wcwidth(o)}t+=this.wcwidth(r)}return t},e}();t.UnicodeService=o}},t={};function n(i){var r=t[i];if(void 0!==r)return r.exports;var o=t[i]={exports:{}};return e[i].call(o.exports,o,o.exports,n),o.exports}var i={};return function(){var e=i;Object.defineProperty(e,"__esModule",{value:!0}),e.Terminal=void 0;var t=n(511),r=n(3236),o=n(9042),a=n(8460),s=n(244),l=function(){function e(e){this._core=new r.Terminal(e),this._addonManager=new s.AddonManager}return e.prototype._checkProposedApi=function(){if(!this._core.optionsService.options.allowProposedApi)throw new Error("You must set the allowProposedApi option to true to use proposed API")},Object.defineProperty(e.prototype,"onCursorMove",{get:function(){return this._core.onCursorMove},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onLineFeed",{get:function(){return this._core.onLineFeed},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onSelectionChange",{get:function(){return this._core.onSelectionChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onData",{get:function(){return this._core.onData},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onBinary",{get:function(){return this._core.onBinary},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onTitleChange",{get:function(){return this._core.onTitleChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onBell",{get:function(){return this._core.onBell},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onScroll",{get:function(){return this._core.onScroll},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onKey",{get:function(){return this._core.onKey},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onRender",{get:function(){return this._core.onRender},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onResize",{get:function(){return this._core.onResize},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"element",{get:function(){return this._core.element},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"parser",{get:function(){return this._checkProposedApi(),this._parser||(this._parser=new h(this._core)),this._parser},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"unicode",{get:function(){return this._checkProposedApi(),new p(this._core)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"textarea",{get:function(){return this._core.textarea},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"rows",{get:function(){return this._core.rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"cols",{get:function(){return this._core.cols},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"buffer",{get:function(){return this._checkProposedApi(),this._buffer||(this._buffer=new u(this._core)),this._buffer},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"markers",{get:function(){return this._checkProposedApi(),this._core.markers},enumerable:!1,configurable:!0}),e.prototype.blur=function(){this._core.blur()},e.prototype.focus=function(){this._core.focus()},e.prototype.resize=function(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)},e.prototype.open=function(e){this._core.open(e)},e.prototype.attachCustomKeyEventHandler=function(e){this._core.attachCustomKeyEventHandler(e)},e.prototype.registerLinkMatcher=function(e,t,n){return this._checkProposedApi(),this._core.registerLinkMatcher(e,t,n)},e.prototype.deregisterLinkMatcher=function(e){this._checkProposedApi(),this._core.deregisterLinkMatcher(e)},e.prototype.registerLinkProvider=function(e){return this._checkProposedApi(),this._core.registerLinkProvider(e)},e.prototype.registerCharacterJoiner=function(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)},e.prototype.deregisterCharacterJoiner=function(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)},e.prototype.registerMarker=function(e){return this._checkProposedApi(),this._verifyIntegers(e),this._core.addMarker(e)},e.prototype.addMarker=function(e){return this.registerMarker(e)},e.prototype.hasSelection=function(){return this._core.hasSelection()},e.prototype.select=function(e,t,n){this._verifyIntegers(e,t,n),this._core.select(e,t,n)},e.prototype.getSelection=function(){return this._core.getSelection()},e.prototype.getSelectionPosition=function(){return this._core.getSelectionPosition()},e.prototype.clearSelection=function(){this._core.clearSelection()},e.prototype.selectAll=function(){this._core.selectAll()},e.prototype.selectLines=function(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)},e.prototype.dispose=function(){this._addonManager.dispose(),this._core.dispose()},e.prototype.scrollLines=function(e){this._verifyIntegers(e),this._core.scrollLines(e)},e.prototype.scrollPages=function(e){this._verifyIntegers(e),this._core.scrollPages(e)},e.prototype.scrollToTop=function(){this._core.scrollToTop()},e.prototype.scrollToBottom=function(){this._core.scrollToBottom()},e.prototype.scrollToLine=function(e){this._verifyIntegers(e),this._core.scrollToLine(e)},e.prototype.clear=function(){this._core.clear()},e.prototype.write=function(e,t){this._core.write(e,t)},e.prototype.writeUtf8=function(e,t){this._core.write(e,t)},e.prototype.writeln=function(e,t){this._core.write(e),this._core.write("\r\n",t)},e.prototype.paste=function(e){this._core.paste(e)},e.prototype.getOption=function(e){return this._core.optionsService.getOption(e)},e.prototype.setOption=function(e,t){this._core.optionsService.setOption(e,t)},e.prototype.refresh=function(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)},e.prototype.reset=function(){this._core.reset()},e.prototype.loadAddon=function(e){return this._addonManager.loadAddon(this,e)},Object.defineProperty(e,"strings",{get:function(){return o},enumerable:!1,configurable:!0}),e.prototype._verifyIntegers=function(){for(var e=[],t=0;t=this._line.length))return n?(this._line.loadCell(e,n),n):this._line.loadCell(e,new t.CellData)},e.prototype.translateToString=function(e,t,n){return this._line.translateToString(e,t,n)},e}(),h=function(){function e(e){this._core=e}return e.prototype.registerCsiHandler=function(e,t){return this._core.registerCsiHandler(e,function(e){return t(e.toArray())})},e.prototype.addCsiHandler=function(e,t){return this.registerCsiHandler(e,t)},e.prototype.registerDcsHandler=function(e,t){return this._core.registerDcsHandler(e,function(e,n){return t(e,n.toArray())})},e.prototype.addDcsHandler=function(e,t){return this.registerDcsHandler(e,t)},e.prototype.registerEscHandler=function(e,t){return this._core.registerEscHandler(e,t)},e.prototype.addEscHandler=function(e,t){return this.registerEscHandler(e,t)},e.prototype.registerOscHandler=function(e,t){return this._core.registerOscHandler(e,t)},e.prototype.addOscHandler=function(e,t){return this.registerOscHandler(e,t)},e}(),p=function(){function e(e){this._core=e}return e.prototype.register=function(e){this._core.unicodeService.register(e)},Object.defineProperty(e.prototype,"versions",{get:function(){return this._core.unicodeService.versions},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"activeVersion",{get:function(){return this._core.unicodeService.activeVersion},set:function(e){this._core.unicodeService.activeVersion=e},enumerable:!1,configurable:!0}),e}()}(),i}()},18419:function(e,t,n){"use strict";n.d(t,{o:function(){return o}});var i=n(90838),r=n(68707),o=function(){function e(){this.data=[],this.dataChange=new i.X([]),this.itemUpdated=new r.xQ}return e.prototype.getItems=function(){return this.data},e.prototype.add=function(e){this.findIndex(e)>=0?this.update(e):(this.data.push(e),this.dataChange.next(this.data))},e.prototype.set=function(e){var t=this;e.forEach(function(e){var n=t.findIndex(e);if(n>=0){var i=Object.assign(t.data[n],e);t.data[n]=i}else t.data.push(e)}),this.data.filter(function(n){return 0===e.filter(function(e){return t.getItemKey(e)===t.getItemKey(n)}).length}).forEach(function(e){return t.remove(e)}),this.dataChange.next(this.data)},e.prototype.get=function(e){var t=this,n=this.data.findIndex(function(n){return t.getItemKey(n)===e});if(n>=0)return this.data[n]},e.prototype.update=function(e){var t=this.findIndex(e);if(t>=0){var n=Object.assign(this.data[t],e);this.data[t]=n,this.dataChange.next(this.data),this.itemUpdated.next(n)}},e.prototype.remove=function(e){var t=this.findIndex(e);t>=0&&(this.data.splice(t,1),this.dataChange.next(this.data))},Object.defineProperty(e.prototype,"changes",{get:function(){return this.dataChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"itemChanged",{get:function(){return this.itemUpdated},enumerable:!1,configurable:!0}),e.prototype.clear=function(){this.data=[],this.dataChange.next(this.data)},e.prototype.findIndex=function(e){var t=this;return this.data.findIndex(function(n){return t.getItemKey(n)===t.getItemKey(e)})},e}()},3941:function(e,t,n){"use strict";n.d(t,{F:function(){return a}});var i=n(61855),r=n(18419),o=n(37602),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return(0,i.ZT)(t,e),t.prototype.getItemKey=function(e){return e.link_id},t.\u0275fac=function(){var e;return function(n){return(e||(e=o.n5z(t)))(n||t)}}(),t.\u0275prov=o.Yz7({token:t,factory:t.\u0275fac}),t}(r.o)},96852:function(e,t,n){"use strict";n.d(t,{G:function(){return a}});var i=n(61855),r=n(18419),o=n(37602),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return(0,i.ZT)(t,e),t.prototype.getItemKey=function(e){return e.node_id},t.\u0275fac=function(){var e;return function(n){return(e||(e=o.n5z(t)))(n||t)}}(),t.\u0275prov=o.Yz7({token:t,factory:t.\u0275fac}),t}(r.o)},36889:function(e,t,n){"use strict";n.d(t,{X:function(){return o}});var i=n(37602),r=n(96153),o=function(){function e(e){this.httpServer=e}return e.prototype.getComputes=function(e){return this.httpServer.get(e,"/computes")},e.prototype.getUploadPath=function(e,t,n){return e.protocol+"//"+e.host+":"+e.port+"/v2/"+t+"/images/"+n},e.prototype.getStatistics=function(e){return this.httpServer.get(e,"/statistics")},e.\u0275fac=function(t){return new(t||e)(i.LFG(r.wh))},e.\u0275prov=i.Yz7({token:e,factory:e.\u0275fac}),e}()},96153:function(e,t,n){"use strict";n.d(t,{gc:function(){return c},wh:function(){return u}});var i=n(61855),r=n(37602),o=n(11363),a=n(13426),s=n(75472),l=function(e){function t(t){return e.call(this,t)||this}return(0,i.ZT)(t,e),t.fromError=function(e,n){var i=new t(e);return i.originalError=n,i},t}(Error),c=function(){function e(){}return e.prototype.handleError=function(e){var t=e;return"HttpErrorResponse"===e.name&&0===e.status&&(t=l.fromError("Server is unreachable",e)),(0,o._)(t)},e.\u0275prov=r.Yz7({token:e,factory:e.\u0275fac=function(t){return new(t||e)}}),e}(),u=function(){function e(e,t){this.http=e,this.errorHandler=t,this.requestsNotificationEmitter=new r.vpe}return e.prototype.get=function(e,t,n){n=this.getJsonOptions(n);var i=this.getOptionsForServer(e,t,n);return this.requestsNotificationEmitter.emit("GET "+i.url),this.http.get(i.url,i.options).pipe((0,a.K)(this.errorHandler.handleError))},e.prototype.getText=function(e,t,n){n=this.getTextOptions(n);var i=this.getOptionsForServer(e,t,n);return this.requestsNotificationEmitter.emit("GET "+i.url),this.http.get(i.url,i.options).pipe((0,a.K)(this.errorHandler.handleError))},e.prototype.post=function(e,t,n,i){i=this.getJsonOptions(i);var r=this.getOptionsForServer(e,t,i);return this.requestsNotificationEmitter.emit("POST "+r.url),this.http.post(r.url,n,r.options).pipe((0,a.K)(this.errorHandler.handleError))},e.prototype.put=function(e,t,n,i){i=this.getJsonOptions(i);var r=this.getOptionsForServer(e,t,i);return this.requestsNotificationEmitter.emit("PUT "+r.url),this.http.put(r.url,n,r.options).pipe((0,a.K)(this.errorHandler.handleError))},e.prototype.delete=function(e,t,n){n=this.getJsonOptions(n);var i=this.getOptionsForServer(e,t,n);return this.requestsNotificationEmitter.emit("DELETE "+i.url),this.http.delete(i.url,i.options).pipe((0,a.K)(this.errorHandler.handleError))},e.prototype.patch=function(e,t,n,i){i=this.getJsonOptions(i);var r=this.getOptionsForServer(e,t,i);return this.http.patch(r.url,n,r.options).pipe((0,a.K)(this.errorHandler.handleError))},e.prototype.head=function(e,t,n){n=this.getJsonOptions(n);var i=this.getOptionsForServer(e,t,n);return this.http.head(i.url,i.options).pipe((0,a.K)(this.errorHandler.handleError))},e.prototype.options=function(e,t,n){n=this.getJsonOptions(n);var i=this.getOptionsForServer(e,t,n);return this.http.options(i.url,i.options).pipe((0,a.K)(this.errorHandler.handleError))},e.prototype.getJsonOptions=function(e){return e||{responseType:"json"}},e.prototype.getTextOptions=function(e){return e||{responseType:"text"}},e.prototype.getOptionsForServer=function(e,t,n){if(e.host&&e.port?(e.protocol||(e.protocol=location.protocol),t=e.protocol+"//"+e.host+":"+e.port+"/v2"+t):t="/v2"+t,n.headers||(n.headers={}),"basic"===e.authorization){var i=btoa(e.login+":"+e.password);n.headers.Authorization="Basic "+i}return{url:t,options:n}},e.\u0275fac=function(t){return new(t||e)(r.LFG(s.eN),r.LFG(c))},e.\u0275prov=r.Yz7({token:e,factory:e.\u0275fac}),e}()},14200:function(e,t,n){"use strict";n.d(t,{Y:function(){return l}});var i=n(68707),r=n(37602),o=n(96153),a=n(10503),s=n(2094),l=function(){function e(e,t,n){this.httpServer=e,this.settingsService=t,this.recentlyOpenedProjectService=n,this.projectListSubject=new i.xQ}return e.prototype.projectListUpdated=function(){this.projectListSubject.next(!0)},e.prototype.get=function(e,t){return this.httpServer.get(e,"/projects/"+t)},e.prototype.open=function(e,t){return this.httpServer.post(e,"/projects/"+t+"/open",{})},e.prototype.close=function(e,t){return this.recentlyOpenedProjectService.removeData(),this.httpServer.post(e,"/projects/"+t+"/close",{})},e.prototype.list=function(e){return this.httpServer.get(e,"/projects")},e.prototype.nodes=function(e,t){return this.httpServer.get(e,"/projects/"+t+"/nodes")},e.prototype.links=function(e,t){return this.httpServer.get(e,"/projects/"+t+"/links")},e.prototype.drawings=function(e,t){return this.httpServer.get(e,"/projects/"+t+"/drawings")},e.prototype.add=function(e,t,n){return this.httpServer.post(e,"/projects",{name:t,project_id:n})},e.prototype.update=function(e,t){return this.httpServer.put(e,"/projects/"+t.project_id,{auto_close:t.auto_close,auto_open:t.auto_open,auto_start:t.auto_start,drawing_grid_size:t.drawing_grid_size,grid_size:t.grid_size,name:t.name,scene_width:t.scene_width,scene_height:t.scene_height,show_interface_labels:t.show_interface_labels})},e.prototype.delete=function(e,t){return this.httpServer.delete(e,"/projects/"+t)},e.prototype.getUploadPath=function(e,t,n){return e.protocol+"//"+e.host+":"+e.port+"/v2/projects/"+t+"/import?name="+n},e.prototype.getExportPath=function(e,t){return e.protocol+"//"+e.host+":"+e.port+"/v2/projects/"+t.project_id+"/export"},e.prototype.export=function(e,t){return this.httpServer.get(e,"/projects/"+t+"/export")},e.prototype.getStatistics=function(e,t){return this.httpServer.get(e,"/projects/"+t+"/stats")},e.prototype.duplicate=function(e,t,n){return this.httpServer.post(e,"/projects/"+t+"/duplicate",{name:n})},e.prototype.isReadOnly=function(e){return!!e.readonly&&e.readonly},e.\u0275fac=function(t){return new(t||e)(r.LFG(o.wh),r.LFG(a.g),r.LFG(s.p))},e.\u0275prov=r.Yz7({token:e,factory:e.\u0275fac}),e}()},2094:function(e,t,n){"use strict";n.d(t,{p:function(){return r}});var i=n(37602),r=function(){function e(){}return e.prototype.setServerId=function(e){this.serverId=e},e.prototype.setProjectId=function(e){this.projectId=e},e.prototype.setServerIdProjectList=function(e){this.serverIdProjectList=e},e.prototype.getServerId=function(){return this.serverId},e.prototype.getProjectId=function(){return this.projectId},e.prototype.getServerIdProjectList=function(){return this.serverIdProjectList},e.prototype.removeData=function(){this.serverId="",this.projectId=""},e.\u0275prov=i.Yz7({token:e,factory:e.\u0275fac=function(t){return new(t||e)}}),e}()},10503:function(e,t,n){"use strict";n.d(t,{g:function(){return r}});var i=n(37602),r=function(){function e(){this.settings={crash_reports:!0,console_command:void 0},this.reportsSettings="crash_reports",this.consoleSettings="console_command",this.getItem(this.reportsSettings)&&(this.settings.crash_reports="true"===this.getItem(this.reportsSettings)),this.getItem(this.consoleSettings)&&(this.settings.console_command=this.getItem(this.consoleSettings))}return e.prototype.setReportsSettings=function(e){this.settings.crash_reports=e,this.removeItem(this.reportsSettings),this.setItem(this.reportsSettings,e?"true":"false")},e.prototype.getReportsSettings=function(){return"true"===this.getItem(this.reportsSettings)},e.prototype.setConsoleSettings=function(e){this.settings.console_command=e,this.removeItem(this.consoleSettings),this.setItem(this.consoleSettings,e)},e.prototype.getConsoleSettings=function(){return this.getItem(this.consoleSettings)},e.prototype.removeItem=function(e){localStorage.removeItem(e)},e.prototype.setItem=function(e,t){localStorage.setItem(e,t)},e.prototype.getItem=function(e){return localStorage.getItem(e)},e.prototype.getAll=function(){return this.settings},e.prototype.setAll=function(e){this.settings=e,this.setConsoleSettings(e.console_command),this.setReportsSettings(e.crash_reports)},e.\u0275prov=i.Yz7({token:e,factory:e.\u0275fac=function(t){return new(t||e)},providedIn:"root"}),e}()},15132:function(e,t,n){"use strict";n.d(t,{f:function(){return o}});var i=n(37602),r=n(90838),o=function(){function e(){this._darkMode$=new r.X(!1),this.darkMode$=this._darkMode$.asObservable(),this.themeChanged=new i.vpe,this.savedTheme="dark",localStorage.getItem("theme")||localStorage.setItem("theme","dark"),this.savedTheme=localStorage.getItem("theme")}return e.prototype.getActualTheme=function(){return this.savedTheme},e.prototype.setDarkMode=function(e){e?(this.savedTheme="dark",this.themeChanged.emit("dark-theme"),localStorage.setItem("theme","dark")):(this.savedTheme="light",this.themeChanged.emit("light-theme"),localStorage.setItem("theme","light"))},e.\u0275prov=i.Yz7({token:e,factory:e.\u0275fac=function(t){return new(t||e)},providedIn:"root"}),e}()},84265:function(e,t,n){"use strict";var i={};n.r(i),n.d(i,{active:function(){return Is},arc:function(){return MS},area:function(){return NS},areaRadial:function(){return HS},ascending:function(){return Kt},axisBottom:function(){return $n},axisLeft:function(){return ei},axisRight:function(){return Kn},axisTop:function(){return Xn},bisect:function(){return rn},bisectLeft:function(){return nn},bisectRight:function(){return tn},bisector:function(){return $t},brush:function(){return rl},brushSelection:function(){return tl},brushX:function(){return nl},brushY:function(){return il},chord:function(){return pl},clientPoint:function(){return Zr},cluster:function(){return jm},color:function(){return eo},contourDensity:function(){return rc},contours:function(){return $l},create:function(){return xr},creator:function(){return pi},cross:function(){return sn},csvFormat:function(){return _c},csvFormatRows:function(){return bc},csvParse:function(){return vc},csvParseRows:function(){return yc},cubehelix:function(){return Lo},curveBasis:function(){return Cx},curveBasisClosed:function(){return Tx},curveBasisOpen:function(){return Zx},curveBundle:function(){return Ox},curveCardinal:function(){return Ix},curveCardinalClosed:function(){return Nx},curveCardinalOpen:function(){return Rx},curveCatmullRom:function(){return Bx},curveCatmullRomClosed:function(){return zx},curveCatmullRomOpen:function(){return Hx},curveLinear:function(){return ES},curveLinearClosed:function(){return Jx},curveMonotoneX:function(){return eC},curveMonotoneY:function(){return tC},curveNatural:function(){return rC},curveStep:function(){return aC},curveStepAfter:function(){return lC},curveStepBefore:function(){return sC},customEvent:function(){return fr},descending:function(){return ln},deviation:function(){return dn},dispatch:function(){return si},drag:function(){return dc},dragDisable:function(){return Nr},dragEnable:function(){return Dr},dsvFormat:function(){return mc},easeBack:function(){return Kc},easeBackIn:function(){return Qc},easeBackInOut:function(){return Kc},easeBackOut:function(){return Xc},easeBounce:function(){return Gc},easeBounceIn:function(){return Jc},easeBounceInOut:function(){return Wc},easeBounceOut:function(){return Gc},easeCircle:function(){return Hc},easeCircleIn:function(){return zc},easeCircleInOut:function(){return Hc},easeCircleOut:function(){return Uc},easeCubic:function(){return Ms},easeCubicIn:function(){return As},easeCubicInOut:function(){return Ms},easeCubicOut:function(){return Zs},easeElastic:function(){return tu},easeElasticIn:function(){return eu},easeElasticInOut:function(){return nu},easeElasticOut:function(){return tu},easeExp:function(){return jc},easeExpIn:function(){return Fc},easeExpInOut:function(){return jc},easeExpOut:function(){return Bc},easeLinear:function(){return Tc},easePoly:function(){return Pc},easePolyIn:function(){return Oc},easePolyInOut:function(){return Pc},easePolyOut:function(){return Ec},easeQuad:function(){return Mc},easeQuadIn:function(){return Ac},easeQuadInOut:function(){return Mc},easeQuadOut:function(){return Zc},easeSin:function(){return Rc},easeSinIn:function(){return Nc},easeSinInOut:function(){return Rc},easeSinOut:function(){return Dc},entries:function(){return Hl},event:function(){return lr},extent:function(){return hn},forceCenter:function(){return iu},forceCollide:function(){return gu},forceLink:function(){return _u},forceManyBody:function(){return ku},forceRadial:function(){return Tu},forceSimulation:function(){return Cu},forceX:function(){return Au},forceY:function(){return Zu},format:function(){return Lu},formatDefaultLocale:function(){return zu},formatLocale:function(){return ju},formatPrefix:function(){return Fu},formatSpecifier:function(){return qu},geoAlbers:function(){return lm},geoAlbersUsa:function(){return cm},geoArea:function(){return Rd},geoAzimuthalEqualArea:function(){return pm},geoAzimuthalEqualAreaRaw:function(){return hm},geoAzimuthalEquidistant:function(){return mm},geoAzimuthalEquidistantRaw:function(){return fm},geoBounds:function(){return Mh},geoCentroid:function(){return jh},geoCircle:function(){return Kh},geoClipAntimeridian:function(){return cp},geoClipCircle:function(){return up},geoClipExtent:function(){return fp},geoClipRectangle:function(){return pp},geoConicConformal:function(){return wm},geoConicConformalRaw:function(){return bm},geoConicEqualArea:function(){return sm},geoConicEqualAreaRaw:function(){return am},geoConicEquidistant:function(){return km},geoConicEquidistantRaw:function(){return Cm},geoContains:function(){return Np},geoDistance:function(){return Tp},geoEquirectangular:function(){return xm},geoEquirectangularRaw:function(){return Sm},geoGnomonic:function(){return Am},geoGnomonicRaw:function(){return Tm},geoGraticule:function(){return Lp},geoGraticule10:function(){return Fp},geoIdentity:function(){return Mm},geoInterpolate:function(){return Bp},geoLength:function(){return xp},geoMercator:function(){return vm},geoMercatorRaw:function(){return gm},geoNaturalEarth1:function(){return Em},geoNaturalEarth1Raw:function(){return Om},geoOrthographic:function(){return Im},geoOrthographicRaw:function(){return Pm},geoPath:function(){return Uf},geoProjection:function(){return im},geoProjectionMutator:function(){return rm},geoRotation:function(){return Vh},geoStereographic:function(){return Nm},geoStereographicRaw:function(){return qm},geoStream:function(){return Cd},geoTransform:function(){return Hf},geoTransverseMercator:function(){return Rm},geoTransverseMercatorRaw:function(){return Dm},hcl:function(){return Ao},hierarchy:function(){return Um},histogram:function(){return Tn},hsl:function(){return lo},interpolate:function(){return ra},interpolateArray:function(){return Xo},interpolateBasis:function(){return jo},interpolateBasisClosed:function(){return zo},interpolateBlues:function(){return Ew},interpolateBrBG:function(){return Ub},interpolateBuGn:function(){return sw},interpolateBuPu:function(){return cw},interpolateCool:function(){return Hw},interpolateCubehelix:function(){return Aa},interpolateCubehelixDefault:function(){return zw},interpolateCubehelixLong:function(){return Za},interpolateDate:function(){return Ko},interpolateGnBu:function(){return dw},interpolateGreens:function(){return Iw},interpolateGreys:function(){return Nw},interpolateHcl:function(){return Ca},interpolateHclLong:function(){return ka},interpolateHsl:function(){return ba},interpolateHslLong:function(){return wa},interpolateInferno:function(){return Qw},interpolateLab:function(){return Sa},interpolateMagma:function(){return Vw},interpolateNumber:function(){return $o},interpolateObject:function(){return ea},interpolateOrRd:function(){return pw},interpolateOranges:function(){return jw},interpolatePRGn:function(){return Yb},interpolatePiYG:function(){return Gb},interpolatePlasma:function(){return Xw},interpolatePuBu:function(){return vw},interpolatePuBuGn:function(){return mw},interpolatePuOr:function(){return Vb},interpolatePuRd:function(){return _w},interpolatePurples:function(){return Rw},interpolateRainbow:function(){return Jw},interpolateRdBu:function(){return Xb},interpolateRdGy:function(){return $b},interpolateRdPu:function(){return ww},interpolateRdYlBu:function(){return tw},interpolateRdYlGn:function(){return iw},interpolateReds:function(){return Fw},interpolateRgb:function(){return Go},interpolateRgbBasis:function(){return Vo},interpolateRgbBasisClosed:function(){return Qo},interpolateRound:function(){return oa},interpolateSpectral:function(){return ow},interpolateString:function(){return ia},interpolateTransformCss:function(){return fa},interpolateTransformSvg:function(){return ma},interpolateViridis:function(){return Ww},interpolateWarm:function(){return Uw},interpolateYlGn:function(){return kw},interpolateYlGnBu:function(){return xw},interpolateYlOrBr:function(){return Aw},interpolateYlOrRd:function(){return Mw},interpolateZoom:function(){return ya},interrupt:function(){return ts},interval:function(){return SC},isoFormat:function(){return Sb},isoParse:function(){return xb},keys:function(){return zl},lab:function(){return bo},line:function(){return qS},lineRadial:function(){return US},linkHorizontal:function(){return $S},linkRadial:function(){return tx},linkVertical:function(){return ex},local:function(){return kr},map:function(){return Pl},matcher:function(){return wi},max:function(){return On},mean:function(){return En},median:function(){return Pn},merge:function(){return In},min:function(){return qn},mouse:function(){return Mr},namespace:function(){return ui},namespaces:function(){return ci},nest:function(){return Il},now:function(){return Ba},pack:function(){return fg},packEnclose:function(){return Vm},packSiblings:function(){return lg},pairs:function(){return on},partition:function(){return bg},path:function(){return Sl},permute:function(){return Nn},pie:function(){return LS},pointRadial:function(){return YS},polygonArea:function(){return jg},polygonCentroid:function(){return zg},polygonContains:function(){return Gg},polygonHull:function(){return Jg},polygonLength:function(){return Wg},precisionFixed:function(){return Uu},precisionPrefix:function(){return Hu},precisionRound:function(){return Yu},quadtree:function(){return uu},quantile:function(){return An},quantize:function(){return Ma},radialArea:function(){return HS},radialLine:function(){return US},randomBates:function(){return ev},randomExponential:function(){return tv},randomIrwinHall:function(){return $g},randomLogNormal:function(){return Kg},randomNormal:function(){return Xg},randomUniform:function(){return Qg},range:function(){return yn},rgb:function(){return ro},ribbon:function(){return Zl},scaleBand:function(){return sv},scaleIdentity:function(){return bv},scaleImplicit:function(){return ov},scaleLinear:function(){return _v},scaleLog:function(){return Zv},scaleOrdinal:function(){return av},scalePoint:function(){return cv},scalePow:function(){return Ov},scaleQuantile:function(){return Pv},scaleQuantize:function(){return Iv},scaleSequential:function(){return Ob},scaleSqrt:function(){return Ev},scaleThreshold:function(){return qv},scaleTime:function(){return Zb},scaleUtc:function(){return Mb},scan:function(){return Dn},schemeAccent:function(){return Ib},schemeBlues:function(){return Ow},schemeBrBG:function(){return zb},schemeBuGn:function(){return aw},schemeBuPu:function(){return lw},schemeCategory10:function(){return Pb},schemeDark2:function(){return qb},schemeGnBu:function(){return uw},schemeGreens:function(){return Pw},schemeGreys:function(){return qw},schemeOrRd:function(){return hw},schemeOranges:function(){return Bw},schemePRGn:function(){return Hb},schemePaired:function(){return Nb},schemePastel1:function(){return Db},schemePastel2:function(){return Rb},schemePiYG:function(){return Jb},schemePuBu:function(){return gw},schemePuBuGn:function(){return fw},schemePuOr:function(){return Wb},schemePuRd:function(){return yw},schemePurples:function(){return Dw},schemeRdBu:function(){return Qb},schemeRdGy:function(){return Kb},schemeRdPu:function(){return bw},schemeRdYlBu:function(){return ew},schemeRdYlGn:function(){return nw},schemeReds:function(){return Lw},schemeSet1:function(){return Lb},schemeSet2:function(){return Fb},schemeSet3:function(){return Bb},schemeSpectral:function(){return rw},schemeYlGn:function(){return Cw},schemeYlGnBu:function(){return Sw},schemeYlOrBr:function(){return Tw},schemeYlOrRd:function(){return Zw},select:function(){return Sr},selectAll:function(){return Or},selection:function(){return wr},selector:function(){return mi},selectorAll:function(){return vi},set:function(){return jl},shuffle:function(){return Rn},stack:function(){return hC},stackOffsetDiverging:function(){return fC},stackOffsetExpand:function(){return pC},stackOffsetNone:function(){return cC},stackOffsetSilhouette:function(){return mC},stackOffsetWiggle:function(){return gC},stackOrderAscending:function(){return vC},stackOrderDescending:function(){return _C},stackOrderInsideOut:function(){return bC},stackOrderNone:function(){return uC},stackOrderReverse:function(){return wC},stratify:function(){return kg},style:function(){return Ri},sum:function(){return Ln},symbol:function(){return bx},symbolCircle:function(){return nx},symbolCross:function(){return ix},symbolDiamond:function(){return ax},symbolSquare:function(){return dx},symbolStar:function(){return ux},symbolTriangle:function(){return px},symbolWye:function(){return yx},symbols:function(){return _x},thresholdFreedmanDiaconis:function(){return Zn},thresholdScott:function(){return Mn},thresholdSturges:function(){return kn},tickIncrement:function(){return xn},tickStep:function(){return Cn},ticks:function(){return Sn},timeDay:function(){return ny},timeDays:function(){return iy},timeFormat:function(){return a_},timeFormatDefaultLocale:function(){return bb},timeFormatLocale:function(){return r_},timeFriday:function(){return uy},timeFridays:function(){return vy},timeHour:function(){return $v},timeHours:function(){return ey},timeInterval:function(){return Rv},timeMillisecond:function(){return Fv},timeMilliseconds:function(){return Bv},timeMinute:function(){return Qv},timeMinutes:function(){return Xv},timeMonday:function(){return ay},timeMondays:function(){return py},timeMonth:function(){return by},timeMonths:function(){return wy},timeParse:function(){return s_},timeSaturday:function(){return dy},timeSaturdays:function(){return yy},timeSecond:function(){return Gv},timeSeconds:function(){return Wv},timeSunday:function(){return oy},timeSundays:function(){return hy},timeThursday:function(){return cy},timeThursdays:function(){return gy},timeTuesday:function(){return sy},timeTuesdays:function(){return fy},timeWednesday:function(){return ly},timeWednesdays:function(){return my},timeWeek:function(){return oy},timeWeeks:function(){return hy},timeYear:function(){return xy},timeYears:function(){return Cy},timeout:function(){return Wa},timer:function(){return Ua},timerFlush:function(){return Ha},touch:function(){return Er},touches:function(){return Pr},transition:function(){return Cs},transpose:function(){return Fn},tree:function(){return Pg},treemap:function(){return Rg},treemapBinary:function(){return Lg},treemapDice:function(){return _g},treemapResquarify:function(){return Bg},treemapSlice:function(){return Ig},treemapSliceDice:function(){return Fg},treemapSquarify:function(){return Dg},tsvFormat:function(){return Cc},tsvFormatRows:function(){return kc},tsvParse:function(){return Sc},tsvParseRows:function(){return xc},utcDay:function(){return Py},utcDays:function(){return Iy},utcFormat:function(){return l_},utcFriday:function(){return By},utcFridays:function(){return Gy},utcHour:function(){return My},utcHours:function(){return Oy},utcMillisecond:function(){return Fv},utcMilliseconds:function(){return Bv},utcMinute:function(){return Ty},utcMinutes:function(){return Ay},utcMonday:function(){return Dy},utcMondays:function(){return Uy},utcMonth:function(){return Qy},utcMonths:function(){return Xy},utcParse:function(){return c_},utcSaturday:function(){return jy},utcSaturdays:function(){return Wy},utcSecond:function(){return Gv},utcSeconds:function(){return Wv},utcSunday:function(){return Ny},utcSundays:function(){return zy},utcThursday:function(){return Fy},utcThursdays:function(){return Jy},utcTuesday:function(){return Ry},utcTuesdays:function(){return Hy},utcWednesday:function(){return Ly},utcWednesdays:function(){return Yy},utcWeek:function(){return Ny},utcWeeks:function(){return zy},utcYear:function(){return $y},utcYears:function(){return e_},values:function(){return Ul},variance:function(){return un},voronoi:function(){return lk},window:function(){return Ii},zip:function(){return jn},zoom:function(){return Sk},zoomIdentity:function(){return hk},zoomTransform:function(){return pk}});var r,o=n(29176),a=n(91035),s=(n(38852),n(76262),n(44829),n(10270)),l=n(20454),c=n(51751),u=n(12558),d=n(49843),h=n(37859),p=n(25801),f=n(61680),m=n(11254);n(26552),"undefined"!=typeof window&&window,"undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,"undefined"!=typeof global&&global;var g="%COMP%";"_nghost-".concat(g),"_ngcontent-".concat(g);var v=" \f\n\r\t\v\u1680\u180e\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff";"[^".concat(v,"]"),"[".concat(v,"]{2,}"),(0,a.Z)(r={},4,4),(0,a.Z)(r,1,1),(0,a.Z)(r,2,2),(0,a.Z)(r,0,0),(0,a.Z)(r,3,3);var y=n(37602),_=n(40098),b=n(28722),w=n(15427),S=n(78081),x=n(6517),C=n(68707),k=n(5051),T=n(57434),A=n(58172),Z=n(89797),M=n(55371),O=n(44213),E=n(57682),P=n(85639),I=n(48359),q=n(59371),N=n(34487),D=n(8392);function R(e,t,n){for(var i in t)if(t.hasOwnProperty(i)){var r=t[i];r?e.setProperty(i,r,(null==n?void 0:n.has(i))?"important":""):e.removeProperty(i)}return e}function L(e,t){var n=t?"":"none";R(e.style,{"touch-action":t?"":"none","-webkit-user-drag":t?"":"none","-webkit-tap-highlight-color":t?"":"transparent","user-select":n,"-ms-user-select":n,"-webkit-user-select":n,"-moz-user-select":n})}function F(e,t,n){R(e.style,{position:t?"":"fixed",top:t?"":"0",opacity:t?"":"0",left:t?"":"-999em"},n)}function B(e,t){return t&&"none"!=t?e+" "+t:e}function j(e){var t=e.toLowerCase().indexOf("ms")>-1?1:1e3;return parseFloat(e)*t}function z(e,t){return e.getPropertyValue(t).split(",").map(function(e){return e.trim()})}function U(e){var t=e.getBoundingClientRect();return{top:t.top,right:t.right,bottom:t.bottom,left:t.left,width:t.width,height:t.height}}function H(e,t,n){return n>=e.top&&n<=e.bottom&&t>=e.left&&t<=e.right}function Y(e,t,n){e.top+=t,e.bottom=e.top+e.height,e.left+=n,e.right=e.left+e.width}function J(e,t,n,i){var r=e.width*t,o=e.height*t;return i>e.top-o&&ie.left-r&&n=s._config.dragStartThreshold){var o=Date.now()>=s._dragStartTime+s._getDragStartDelay(e),a=s._dropContainer;if(!o)return void s._endDragSequence(e);a&&(a.isDragging()||a.isReceiving())||(e.preventDefault(),s._hasStartedDragging=!0,s._ngZone.run(function(){return s._startDragSequence(e)}))}},this._pointerUp=function(e){s._endDragSequence(e)},this.withRootElement(t).withParent(n.parentDragRef||null),this._parentPositions=new G(i,o),a.registerDragItem(this)}return(0,m.Z)(e,[{key:"disabled",get:function(){return this._disabled||!(!this._dropContainer||!this._dropContainer.disabled)},set:function(e){var t=(0,S.Ig)(e);t!==this._disabled&&(this._disabled=t,this._toggleNativeDragInteractions(),this._handles.forEach(function(e){return L(e,t)}))}},{key:"getPlaceholderElement",value:function(){return this._placeholder}},{key:"getRootElement",value:function(){return this._rootElement}},{key:"getVisibleElement",value:function(){return this.isDragging()?this.getPlaceholderElement():this.getRootElement()}},{key:"withHandles",value:function(e){var t=this;this._handles=e.map(function(e){return(0,S.fI)(e)}),this._handles.forEach(function(e){return L(e,t.disabled)}),this._toggleNativeDragInteractions();var n=new Set;return this._disabledHandles.forEach(function(e){t._handles.indexOf(e)>-1&&n.add(e)}),this._disabledHandles=n,this}},{key:"withPreviewTemplate",value:function(e){return this._previewTemplate=e,this}},{key:"withPlaceholderTemplate",value:function(e){return this._placeholderTemplate=e,this}},{key:"withRootElement",value:function(e){var t=this,n=(0,S.fI)(e);return n!==this._rootElement&&(this._rootElement&&this._removeRootElementListeners(this._rootElement),this._ngZone.runOutsideAngular(function(){n.addEventListener("mousedown",t._pointerDown,ee),n.addEventListener("touchstart",t._pointerDown,$)}),this._initialTransform=void 0,this._rootElement=n),"undefined"!=typeof SVGElement&&this._rootElement instanceof SVGElement&&(this._ownerSVGElement=this._rootElement.ownerSVGElement),this}},{key:"withBoundaryElement",value:function(e){var t=this;return this._boundaryElement=e?(0,S.fI)(e):null,this._resizeSubscription.unsubscribe(),e&&(this._resizeSubscription=this._viewportRuler.change(10).subscribe(function(){return t._containInsideBoundaryOnResize()})),this}},{key:"withParent",value:function(e){return this._parentDragRef=e,this}},{key:"dispose",value:function(){this._removeRootElementListeners(this._rootElement),this.isDragging()&&oe(this._rootElement),oe(this._anchor),this._destroyPreview(),this._destroyPlaceholder(),this._dragDropRegistry.removeDragItem(this),this._removeSubscriptions(),this.beforeStarted.complete(),this.started.complete(),this.released.complete(),this.ended.complete(),this.entered.complete(),this.exited.complete(),this.dropped.complete(),this._moveEvents.complete(),this._handles=[],this._disabledHandles.clear(),this._dropContainer=void 0,this._resizeSubscription.unsubscribe(),this._parentPositions.clear(),this._boundaryElement=this._rootElement=this._ownerSVGElement=this._placeholderTemplate=this._previewTemplate=this._anchor=this._parentDragRef=null}},{key:"isDragging",value:function(){return this._hasStartedDragging&&this._dragDropRegistry.isDragging(this)}},{key:"reset",value:function(){this._rootElement.style.transform=this._initialTransform||"",this._activeTransform={x:0,y:0},this._passiveTransform={x:0,y:0}}},{key:"disableHandle",value:function(e){!this._disabledHandles.has(e)&&this._handles.indexOf(e)>-1&&(this._disabledHandles.add(e),L(e,!0))}},{key:"enableHandle",value:function(e){this._disabledHandles.has(e)&&(this._disabledHandles.delete(e),L(e,this.disabled))}},{key:"withDirection",value:function(e){return this._direction=e,this}},{key:"_withDropContainer",value:function(e){this._dropContainer=e}},{key:"getFreeDragPosition",value:function(){var e=this.isDragging()?this._activeTransform:this._passiveTransform;return{x:e.x,y:e.y}}},{key:"setFreeDragPosition",value:function(e){return this._activeTransform={x:0,y:0},this._passiveTransform.x=e.x,this._passiveTransform.y=e.y,this._dropContainer||this._applyRootElementTransform(e.x,e.y),this}},{key:"withPreviewContainer",value:function(e){return this._previewContainer=e,this}},{key:"_sortFromLastPointerPosition",value:function(){var e=this._lastKnownPointerPosition;e&&this._dropContainer&&this._updateActiveDropContainer(this._getConstrainedPointerPosition(e),e)}},{key:"_removeSubscriptions",value:function(){this._pointerMoveSubscription.unsubscribe(),this._pointerUpSubscription.unsubscribe(),this._scrollSubscription.unsubscribe()}},{key:"_destroyPreview",value:function(){this._preview&&oe(this._preview),this._previewRef&&this._previewRef.destroy(),this._preview=this._previewRef=null}},{key:"_destroyPlaceholder",value:function(){this._placeholder&&oe(this._placeholder),this._placeholderRef&&this._placeholderRef.destroy(),this._placeholder=this._placeholderRef=null}},{key:"_endDragSequence",value:function(e){var t=this;if(this._dragDropRegistry.isDragging(this)&&(this._removeSubscriptions(),this._dragDropRegistry.stopDragging(this),this._toggleNativeDragInteractions(),this._handles&&(this._rootElement.style.webkitTapHighlightColor=this._rootElementTapHighlight),this._hasStartedDragging))if(this.released.next({source:this}),this._dropContainer)this._dropContainer._stopScrolling(),this._animatePreviewToPlaceholder().then(function(){t._cleanupDragArtifacts(e),t._cleanupCachedDimensions(),t._dragDropRegistry.stopDragging(t)});else{this._passiveTransform.x=this._activeTransform.x;var n=this._getPointerPositionOnPage(e);this._passiveTransform.y=this._activeTransform.y,this._ngZone.run(function(){t.ended.next({source:t,distance:t._getDragDistance(n),dropPoint:n})}),this._cleanupCachedDimensions(),this._dragDropRegistry.stopDragging(this)}}},{key:"_startDragSequence",value:function(e){ae(e)&&(this._lastTouchEventTime=Date.now()),this._toggleNativeDragInteractions();var t=this._dropContainer;if(t){var n=this._rootElement,i=n.parentNode,r=this._placeholder=this._createPlaceholderElement(),o=this._anchor=this._anchor||this._document.createComment(""),a=this._getShadowRoot();i.insertBefore(o,n),this._initialTransform=n.style.transform||"",this._preview=this._createPreviewElement(),F(n,!1,te),this._document.body.appendChild(i.replaceChild(r,n)),this._getPreviewInsertionPoint(i,a).appendChild(this._preview),this.started.next({source:this}),t.start(),this._initialContainer=t,this._initialIndex=t.getItemIndex(this)}else this.started.next({source:this}),this._initialContainer=this._initialIndex=void 0;this._parentPositions.cache(t?t.getScrollableParents():[])}},{key:"_initializeDragSequence",value:function(e,t){var n=this;this._parentDragRef&&t.stopPropagation();var i=this.isDragging(),r=ae(t),o=!r&&0!==t.button,a=this._rootElement,s=(0,w.sA)(t),l=!r&&this._lastTouchEventTime&&this._lastTouchEventTime+800>Date.now(),c=r?(0,x.yG)(t):(0,x.X6)(t);if(s&&s.draggable&&"mousedown"===t.type&&t.preventDefault(),!(i||o||l||c)){this._handles.length&&(this._rootElementTapHighlight=a.style.webkitTapHighlightColor||"",a.style.webkitTapHighlightColor="transparent"),this._hasStartedDragging=this._hasMoved=!1,this._removeSubscriptions(),this._pointerMoveSubscription=this._dragDropRegistry.pointerMove.subscribe(this._pointerMove),this._pointerUpSubscription=this._dragDropRegistry.pointerUp.subscribe(this._pointerUp),this._scrollSubscription=this._dragDropRegistry.scrolled(this._getShadowRoot()).subscribe(function(e){return n._updateOnScroll(e)}),this._boundaryElement&&(this._boundaryRect=U(this._boundaryElement));var u=this._previewTemplate;this._pickupPositionInElement=u&&u.template&&!u.matchSize?{x:0,y:0}:this._getPointerPositionInElement(e,t);var d=this._pickupPositionOnPage=this._lastKnownPointerPosition=this._getPointerPositionOnPage(t);this._pointerDirectionDelta={x:0,y:0},this._pointerPositionAtLastDirectionChange={x:d.x,y:d.y},this._dragStartTime=Date.now(),this._dragDropRegistry.startDragging(this,t)}}},{key:"_cleanupDragArtifacts",value:function(e){var t=this;F(this._rootElement,!0,te),this._anchor.parentNode.replaceChild(this._rootElement,this._anchor),this._destroyPreview(),this._destroyPlaceholder(),this._boundaryRect=this._previewRect=this._initialTransform=void 0,this._ngZone.run(function(){var n=t._dropContainer,i=n.getItemIndex(t),r=t._getPointerPositionOnPage(e),o=t._getDragDistance(r),a=n._isOverContainer(r.x,r.y);t.ended.next({source:t,distance:o,dropPoint:r}),t.dropped.next({item:t,currentIndex:i,previousIndex:t._initialIndex,container:n,previousContainer:t._initialContainer,isPointerOverContainer:a,distance:o,dropPoint:r}),n.drop(t,i,t._initialIndex,t._initialContainer,a,o,r),t._dropContainer=t._initialContainer})}},{key:"_updateActiveDropContainer",value:function(e,t){var n=this,i=e.x,r=e.y,o=t.x,a=t.y,s=this._initialContainer._getSiblingContainerFromPosition(this,i,r);!s&&this._dropContainer!==this._initialContainer&&this._initialContainer._isOverContainer(i,r)&&(s=this._initialContainer),s&&s!==this._dropContainer&&this._ngZone.run(function(){n.exited.next({item:n,container:n._dropContainer}),n._dropContainer.exit(n),n._dropContainer=s,n._dropContainer.enter(n,i,r,s===n._initialContainer&&s.sortingDisabled?n._initialIndex:void 0),n.entered.next({item:n,container:s,currentIndex:s.getItemIndex(n)})}),this.isDragging()&&(this._dropContainer._startScrollingIfNecessary(o,a),this._dropContainer._sortItem(this,i,r,this._pointerDirectionDelta),this._applyPreviewTransform(i-this._pickupPositionInElement.x,r-this._pickupPositionInElement.y))}},{key:"_createPreviewElement",value:function(){var e,t=this._previewTemplate,n=this.previewClass,i=t?t.template:null;if(i&&t){var r=t.matchSize?this._rootElement.getBoundingClientRect():null,o=t.viewContainer.createEmbeddedView(i,t.context);o.detectChanges(),e=se(o,this._document),this._previewRef=o,t.matchSize?le(e,r):e.style.transform=ie(this._pickupPositionOnPage.x,this._pickupPositionOnPage.y)}else{var a=this._rootElement;le(e=W(a),a.getBoundingClientRect()),this._initialTransform&&(e.style.transform=this._initialTransform)}return R(e.style,{"pointer-events":"none",margin:"0",position:"fixed",top:"0",left:"0","z-index":"".concat(this._config.zIndex||1e3)},te),L(e,!1),e.classList.add("cdk-drag-preview"),e.setAttribute("dir",this._direction),n&&(Array.isArray(n)?n.forEach(function(t){return e.classList.add(t)}):e.classList.add(n)),e}},{key:"_animatePreviewToPlaceholder",value:function(){var e=this;if(!this._hasMoved)return Promise.resolve();var t=this._placeholder.getBoundingClientRect();this._preview.classList.add("cdk-drag-animating"),this._applyPreviewTransform(t.left,t.top);var n=function(e){var t=getComputedStyle(e),n=z(t,"transition-property"),i=n.find(function(e){return"transform"===e||"all"===e});if(!i)return 0;var r=n.indexOf(i),o=z(t,"transition-duration"),a=z(t,"transition-delay");return j(o[r])+j(a[r])}(this._preview);return 0===n?Promise.resolve():this._ngZone.runOutsideAngular(function(){return new Promise(function(t){var i=function n(i){(!i||(0,w.sA)(i)===e._preview&&"transform"===i.propertyName)&&(e._preview.removeEventListener("transitionend",n),t(),clearTimeout(r))},r=setTimeout(i,1.5*n);e._preview.addEventListener("transitionend",i)})})}},{key:"_createPlaceholderElement",value:function(){var e,t=this._placeholderTemplate,n=t?t.template:null;return n?(this._placeholderRef=t.viewContainer.createEmbeddedView(n,t.context),this._placeholderRef.detectChanges(),e=se(this._placeholderRef,this._document)):e=W(this._rootElement),e.classList.add("cdk-drag-placeholder"),e}},{key:"_getPointerPositionInElement",value:function(e,t){var n=this._rootElement.getBoundingClientRect(),i=e===this._rootElement?null:e,r=i?i.getBoundingClientRect():n,o=ae(t)?t.targetTouches[0]:t,a=this._getViewportScrollPosition();return{x:r.left-n.left+(o.pageX-r.left-a.left),y:r.top-n.top+(o.pageY-r.top-a.top)}}},{key:"_getPointerPositionOnPage",value:function(e){var t=this._getViewportScrollPosition(),n=ae(e)?e.touches[0]||e.changedTouches[0]||{pageX:0,pageY:0}:e,i=n.pageX-t.left,r=n.pageY-t.top;if(this._ownerSVGElement){var o=this._ownerSVGElement.getScreenCTM();if(o){var a=this._ownerSVGElement.createSVGPoint();return a.x=i,a.y=r,a.matrixTransform(o.inverse())}}return{x:i,y:r}}},{key:"_getConstrainedPointerPosition",value:function(e){var t=this._dropContainer?this._dropContainer.lockAxis:null,n=this.constrainPosition?this.constrainPosition(e,this):e,i=n.x,r=n.y;if("x"===this.lockAxis||"x"===t?r=this._pickupPositionOnPage.y:"y"!==this.lockAxis&&"y"!==t||(i=this._pickupPositionOnPage.x),this._boundaryRect){var o=this._pickupPositionInElement,a=o.x,s=o.y,l=this._boundaryRect,c=this._previewRect,u=l.top+s,d=l.bottom-(c.height-s);i=re(i,l.left+a,l.right-(c.width-a)),r=re(r,u,d)}return{x:i,y:r}}},{key:"_updatePointerDirectionDelta",value:function(e){var t=e.x,n=e.y,i=this._pointerDirectionDelta,r=this._pointerPositionAtLastDirectionChange,o=Math.abs(t-r.x),a=Math.abs(n-r.y);return o>this._config.pointerDirectionChangeThreshold&&(i.x=t>r.x?1:-1,r.x=t),a>this._config.pointerDirectionChangeThreshold&&(i.y=n>r.y?1:-1,r.y=n),i}},{key:"_toggleNativeDragInteractions",value:function(){if(this._rootElement&&this._handles){var e=this._handles.length>0||!this.isDragging();e!==this._nativeInteractionsEnabled&&(this._nativeInteractionsEnabled=e,L(this._rootElement,e))}}},{key:"_removeRootElementListeners",value:function(e){e.removeEventListener("mousedown",this._pointerDown,ee),e.removeEventListener("touchstart",this._pointerDown,$)}},{key:"_applyRootElementTransform",value:function(e,t){var n=ie(e,t);null==this._initialTransform&&(this._initialTransform=this._rootElement.style.transform&&"none"!=this._rootElement.style.transform?this._rootElement.style.transform:""),this._rootElement.style.transform=B(n,this._initialTransform)}},{key:"_applyPreviewTransform",value:function(e,t){var n,i=(null===(n=this._previewTemplate)||void 0===n?void 0:n.template)?void 0:this._initialTransform,r=ie(e,t);this._preview.style.transform=B(r,i)}},{key:"_getDragDistance",value:function(e){var t=this._pickupPositionOnPage;return t?{x:e.x-t.x,y:e.y-t.y}:{x:0,y:0}}},{key:"_cleanupCachedDimensions",value:function(){this._boundaryRect=this._previewRect=void 0,this._parentPositions.clear()}},{key:"_containInsideBoundaryOnResize",value:function(){var e=this._passiveTransform,t=e.x,n=e.y;if(!(0===t&&0===n||this.isDragging())&&this._boundaryElement){var i=this._boundaryElement.getBoundingClientRect(),r=this._rootElement.getBoundingClientRect();if(!(0===i.width&&0===i.height||0===r.width&&0===r.height)){var o=i.left-r.left,a=r.right-i.right,s=i.top-r.top,l=r.bottom-i.bottom;i.width>r.width?(o>0&&(t+=o),a>0&&(t-=a)):t=0,i.height>r.height?(s>0&&(n+=s),l>0&&(n-=l)):n=0,t===this._passiveTransform.x&&n===this._passiveTransform.y||this.setFreeDragPosition({y:n,x:t})}}}},{key:"_getDragStartDelay",value:function(e){var t=this.dragStartDelay;return"number"==typeof t?t:ae(e)?t.touch:t?t.mouse:0}},{key:"_updateOnScroll",value:function(e){var t=this._parentPositions.handleScroll(e);if(t){var n=(0,w.sA)(e);this._boundaryRect&&(n===this._document||n!==this._boundaryElement&&n.contains(this._boundaryElement))&&Y(this._boundaryRect,t.top,t.left),this._pickupPositionOnPage.x+=t.left,this._pickupPositionOnPage.y+=t.top,this._dropContainer||(this._activeTransform.x-=t.left,this._activeTransform.y-=t.top,this._applyRootElementTransform(this._activeTransform.x,this._activeTransform.y))}}},{key:"_getViewportScrollPosition",value:function(){var e=this._parentPositions.positions.get(this._document);return e?e.scrollPosition:this._viewportRuler.getViewportScrollPosition()}},{key:"_getShadowRoot",value:function(){return void 0===this._cachedShadowRoot&&(this._cachedShadowRoot=(0,w.kV)(this._rootElement)),this._cachedShadowRoot}},{key:"_getPreviewInsertionPoint",value:function(e,t){var n=this._previewContainer||"global";if("parent"===n)return e;if("global"===n){var i=this._document;return t||i.fullscreenElement||i.webkitFullscreenElement||i.mozFullScreenElement||i.msFullscreenElement||i.body}return(0,S.fI)(n)}}]),e}();function ie(e,t){return"translate3d(".concat(Math.round(e),"px, ").concat(Math.round(t),"px, 0)")}function re(e,t,n){return Math.max(t,Math.min(n,e))}function oe(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function ae(e){return"t"===e.type[0]}function se(e,t){var n=e.rootNodes;if(1===n.length&&n[0].nodeType===t.ELEMENT_NODE)return n[0];var i=t.createElement("div");return n.forEach(function(e){return i.appendChild(e)}),i}function le(e,t){e.style.width="".concat(t.width,"px"),e.style.height="".concat(t.height,"px"),e.style.transform=ie(t.left,t.top)}function ce(e,t){return Math.max(0,Math.min(t,e))}var ue=function(){function e(t,n,i,r,o){var a=this;(0,f.Z)(this,e),this._dragDropRegistry=n,this._ngZone=r,this._viewportRuler=o,this.disabled=!1,this.sortingDisabled=!1,this.autoScrollDisabled=!1,this.autoScrollStep=2,this.enterPredicate=function(){return!0},this.sortPredicate=function(){return!0},this.beforeStarted=new C.xQ,this.entered=new C.xQ,this.exited=new C.xQ,this.dropped=new C.xQ,this.sorted=new C.xQ,this._isDragging=!1,this._itemPositions=[],this._previousSwap={drag:null,delta:0,overlaps:!1},this._draggables=[],this._siblings=[],this._orientation="vertical",this._activeSiblings=new Set,this._direction="ltr",this._viewportScrollSubscription=k.w.EMPTY,this._verticalScrollDirection=0,this._horizontalScrollDirection=0,this._stopScrollTimers=new C.xQ,this._cachedShadowRoot=null,this._startScrollInterval=function(){a._stopScrolling(),(0,T.F)(0,A.Z).pipe((0,O.R)(a._stopScrollTimers)).subscribe(function(){var e=a._scrollNode,t=a.autoScrollStep;1===a._verticalScrollDirection?he(e,-t):2===a._verticalScrollDirection&&he(e,t),1===a._horizontalScrollDirection?pe(e,-t):2===a._horizontalScrollDirection&&pe(e,t)})},this.element=(0,S.fI)(t),this._document=i,this.withScrollableParents([this.element]),n.registerDropContainer(this),this._parentPositions=new G(i,o)}return(0,m.Z)(e,[{key:"dispose",value:function(){this._stopScrolling(),this._stopScrollTimers.complete(),this._viewportScrollSubscription.unsubscribe(),this.beforeStarted.complete(),this.entered.complete(),this.exited.complete(),this.dropped.complete(),this.sorted.complete(),this._activeSiblings.clear(),this._scrollNode=null,this._parentPositions.clear(),this._dragDropRegistry.removeDropContainer(this)}},{key:"isDragging",value:function(){return this._isDragging}},{key:"start",value:function(){this._draggingStarted(),this._notifyReceivingSiblings()}},{key:"enter",value:function(e,t,n,i){var r;this._draggingStarted(),null==i?-1===(r=this.sortingDisabled?this._draggables.indexOf(e):-1)&&(r=this._getItemIndexFromPointerPosition(e,t,n)):r=i;var o=this._activeDraggables,a=o.indexOf(e),s=e.getPlaceholderElement(),l=o[r];if(l===e&&(l=o[r+1]),a>-1&&o.splice(a,1),l&&!this._dragDropRegistry.isDragging(l)){var c=l.getRootElement();c.parentElement.insertBefore(s,c),o.splice(r,0,e)}else if(this._shouldEnterAsFirstChild(t,n)){var u=o[0].getRootElement();u.parentNode.insertBefore(s,u),o.unshift(e)}else(0,S.fI)(this.element).appendChild(s),o.push(e);s.style.transform="",this._cacheItemPositions(),this._cacheParentPositions(),this._notifyReceivingSiblings(),this.entered.next({item:e,container:this,currentIndex:this.getItemIndex(e)})}},{key:"exit",value:function(e){this._reset(),this.exited.next({item:e,container:this})}},{key:"drop",value:function(e,t,n,i,r,o,a){this._reset(),this.dropped.next({item:e,currentIndex:t,previousIndex:n,container:this,previousContainer:i,isPointerOverContainer:r,distance:o,dropPoint:a})}},{key:"withItems",value:function(e){var t=this,n=this._draggables;return this._draggables=e,e.forEach(function(e){return e._withDropContainer(t)}),this.isDragging()&&(n.filter(function(e){return e.isDragging()}).every(function(t){return-1===e.indexOf(t)})?this._reset():this._cacheItems()),this}},{key:"withDirection",value:function(e){return this._direction=e,this}},{key:"connectedTo",value:function(e){return this._siblings=e.slice(),this}},{key:"withOrientation",value:function(e){return this._orientation=e,this}},{key:"withScrollableParents",value:function(e){var t=(0,S.fI)(this.element);return this._scrollableElements=-1===e.indexOf(t)?[t].concat((0,p.Z)(e)):e.slice(),this}},{key:"getScrollableParents",value:function(){return this._scrollableElements}},{key:"getItemIndex",value:function(e){return this._isDragging?de("horizontal"===this._orientation&&"rtl"===this._direction?this._itemPositions.slice().reverse():this._itemPositions,function(t){return t.drag===e}):this._draggables.indexOf(e)}},{key:"isReceiving",value:function(){return this._activeSiblings.size>0}},{key:"_sortItem",value:function(e,t,n,i){if(!this.sortingDisabled&&this._clientRect&&J(this._clientRect,.05,t,n)){var r=this._itemPositions,o=this._getItemIndexFromPointerPosition(e,t,n,i);if(!(-1===o&&r.length>0)){var a="horizontal"===this._orientation,s=de(r,function(t){return t.drag===e}),l=r[o],c=l.clientRect,u=s>o?1:-1,d=this._getItemOffsetPx(r[s].clientRect,c,u),h=this._getSiblingOffsetPx(s,r,u),p=r.slice();!function(e,t,n){var i=ce(t,e.length-1),r=ce(n,e.length-1);if(i!==r){for(var o=e[i],a=r0&&(a=1):e.scrollHeight-l>e.clientHeight&&(a=2)}if(o){var c=e.scrollLeft;1===o?c>0&&(s=1):e.scrollWidth-c>e.clientWidth&&(s=2)}return[a,s]}(l,a.clientRect,e,t),u=(0,s.Z)(c,2);o=u[1],((r=u[0])||o)&&(i=l)}}),!r&&!o){var a=this._viewportRuler.getViewportSize(),l=a.width,c=a.height,u={width:l,height:c,top:0,right:l,bottom:c,left:0};r=fe(u,t),o=me(u,e),i=window}!i||r===this._verticalScrollDirection&&o===this._horizontalScrollDirection&&i===this._scrollNode||(this._verticalScrollDirection=r,this._horizontalScrollDirection=o,this._scrollNode=i,(r||o)&&i?this._ngZone.runOutsideAngular(this._startScrollInterval):this._stopScrolling())}}},{key:"_stopScrolling",value:function(){this._stopScrollTimers.next()}},{key:"_draggingStarted",value:function(){var e=(0,S.fI)(this.element).style;this.beforeStarted.next(),this._isDragging=!0,this._initialScrollSnap=e.msScrollSnapType||e.scrollSnapType||"",e.scrollSnapType=e.msScrollSnapType="none",this._cacheItems(),this._viewportScrollSubscription.unsubscribe(),this._listenToScrollEvents()}},{key:"_cacheParentPositions",value:function(){var e=(0,S.fI)(this.element);this._parentPositions.cache(this._scrollableElements),this._clientRect=this._parentPositions.positions.get(e).clientRect}},{key:"_cacheItemPositions",value:function(){var e="horizontal"===this._orientation;this._itemPositions=this._activeDraggables.map(function(e){var t=e.getVisibleElement();return{drag:e,offset:0,initialTransform:t.style.transform||"",clientRect:U(t)}}).sort(function(t,n){return e?t.clientRect.left-n.clientRect.left:t.clientRect.top-n.clientRect.top})}},{key:"_reset",value:function(){var e=this;this._isDragging=!1;var t=(0,S.fI)(this.element).style;t.scrollSnapType=t.msScrollSnapType=this._initialScrollSnap,this._activeDraggables.forEach(function(t){var n,i=t.getRootElement();if(i){var r=null===(n=e._itemPositions.find(function(e){return e.drag===t}))||void 0===n?void 0:n.initialTransform;i.style.transform=r||""}}),this._siblings.forEach(function(t){return t._stopReceiving(e)}),this._activeDraggables=[],this._itemPositions=[],this._previousSwap.drag=null,this._previousSwap.delta=0,this._previousSwap.overlaps=!1,this._stopScrolling(),this._viewportScrollSubscription.unsubscribe(),this._parentPositions.clear()}},{key:"_getSiblingOffsetPx",value:function(e,t,n){var i="horizontal"===this._orientation,r=t[e].clientRect,o=t[e+-1*n],a=r[i?"width":"height"]*n;if(o){var s=i?"left":"top",l=i?"right":"bottom";-1===n?a-=o.clientRect[s]-r[l]:a+=r[s]-o.clientRect[l]}return a}},{key:"_getItemOffsetPx",value:function(e,t,n){var i="horizontal"===this._orientation,r=i?t.left-e.left:t.top-e.top;return-1===n&&(r+=i?t.width-e.width:t.height-e.height),r}},{key:"_shouldEnterAsFirstChild",value:function(e,t){if(!this._activeDraggables.length)return!1;var n=this._itemPositions,i="horizontal"===this._orientation;if(n[0].drag!==this._activeDraggables[0]){var r=n[n.length-1].clientRect;return i?e>=r.right:t>=r.bottom}var o=n[0].clientRect;return i?e<=o.left:t<=o.top}},{key:"_getItemIndexFromPointerPosition",value:function(e,t,n,i){var r=this,o="horizontal"===this._orientation,a=de(this._itemPositions,function(a,s,l){var c=a.drag,u=a.clientRect;return c===e?l.length<2:(!i||c!==r._previousSwap.drag||!r._previousSwap.overlaps||(o?i.x:i.y)!==r._previousSwap.delta)&&(o?t>=Math.floor(u.left)&&t=Math.floor(u.top)&&n-1})&&(i.add(e),this._cacheParentPositions(),this._listenToScrollEvents())}},{key:"_stopReceiving",value:function(e){this._activeSiblings.delete(e),this._viewportScrollSubscription.unsubscribe()}},{key:"_listenToScrollEvents",value:function(){var e=this;this._viewportScrollSubscription=this._dragDropRegistry.scrolled(this._getShadowRoot()).subscribe(function(t){if(e.isDragging()){var n=e._parentPositions.handleScroll(t);n&&(e._itemPositions.forEach(function(e){Y(e.clientRect,n.top,n.left)}),e._itemPositions.forEach(function(t){var n=t.drag;e._dragDropRegistry.isDragging(n)&&n._sortFromLastPointerPosition()}))}else e.isReceiving()&&e._cacheParentPositions()})}},{key:"_getShadowRoot",value:function(){if(!this._cachedShadowRoot){var e=(0,w.kV)((0,S.fI)(this.element));this._cachedShadowRoot=e||this._document}return this._cachedShadowRoot}},{key:"_notifyReceivingSiblings",value:function(){var e=this,t=this._activeDraggables.filter(function(e){return e.isDragging()});this._siblings.forEach(function(n){return n._startReceiving(e,t)})}}]),e}();function de(e,t){for(var n=0;n=n-r&&t<=n+r?1:t>=i-r&&t<=i+r?2:0}function me(e,t){var n=e.left,i=e.right,r=.05*e.width;return t>=n-r&&t<=n+r?1:t>=i-r&&t<=i+r?2:0}var ge=(0,w.i$)({passive:!1,capture:!0}),ve=function(){var e=function(){function e(t,n){var i=this;(0,f.Z)(this,e),this._ngZone=t,this._dropInstances=new Set,this._dragInstances=new Set,this._activeDragInstances=[],this._globalListeners=new Map,this._draggingPredicate=function(e){return e.isDragging()},this.pointerMove=new C.xQ,this.pointerUp=new C.xQ,this.scroll=new C.xQ,this._preventDefaultWhileDragging=function(e){i._activeDragInstances.length>0&&e.preventDefault()},this._persistentTouchmoveListener=function(e){i._activeDragInstances.length>0&&(i._activeDragInstances.some(i._draggingPredicate)&&e.preventDefault(),i.pointerMove.next(e))},this._document=n}return(0,m.Z)(e,[{key:"registerDropContainer",value:function(e){this._dropInstances.has(e)||this._dropInstances.add(e)}},{key:"registerDragItem",value:function(e){var t=this;this._dragInstances.add(e),1===this._dragInstances.size&&this._ngZone.runOutsideAngular(function(){t._document.addEventListener("touchmove",t._persistentTouchmoveListener,ge)})}},{key:"removeDropContainer",value:function(e){this._dropInstances.delete(e)}},{key:"removeDragItem",value:function(e){this._dragInstances.delete(e),this.stopDragging(e),0===this._dragInstances.size&&this._document.removeEventListener("touchmove",this._persistentTouchmoveListener,ge)}},{key:"startDragging",value:function(e,t){var n=this;if(!(this._activeDragInstances.indexOf(e)>-1)&&(this._activeDragInstances.push(e),1===this._activeDragInstances.length)){var i=t.type.startsWith("touch");this._globalListeners.set(i?"touchend":"mouseup",{handler:function(e){return n.pointerUp.next(e)},options:!0}).set("scroll",{handler:function(e){return n.scroll.next(e)},options:!0}).set("selectstart",{handler:this._preventDefaultWhileDragging,options:ge}),i||this._globalListeners.set("mousemove",{handler:function(e){return n.pointerMove.next(e)},options:ge}),this._ngZone.runOutsideAngular(function(){n._globalListeners.forEach(function(e,t){n._document.addEventListener(t,e.handler,e.options)})})}}},{key:"stopDragging",value:function(e){var t=this._activeDragInstances.indexOf(e);t>-1&&(this._activeDragInstances.splice(t,1),0===this._activeDragInstances.length&&this._clearGlobalListeners())}},{key:"isDragging",value:function(e){return this._activeDragInstances.indexOf(e)>-1}},{key:"scrolled",value:function(e){var t=this,n=[this.scroll];return e&&e!==this._document&&n.push(new Z.y(function(n){return t._ngZone.runOutsideAngular(function(){var i=function(e){t._activeDragInstances.length&&n.next(e)};return e.addEventListener("scroll",i,!0),function(){e.removeEventListener("scroll",i,!0)}})})),M.T.apply(void 0,n)}},{key:"ngOnDestroy",value:function(){var e=this;this._dragInstances.forEach(function(t){return e.removeDragItem(t)}),this._dropInstances.forEach(function(t){return e.removeDropContainer(t)}),this._clearGlobalListeners(),this.pointerMove.complete(),this.pointerUp.complete()}},{key:"_clearGlobalListeners",value:function(){var e=this;this._globalListeners.forEach(function(t,n){e._document.removeEventListener(n,t.handler,t.options)}),this._globalListeners.clear()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(y.LFG(y.R0b),y.LFG(_.K0))},e.\u0275prov=y.Yz7({factory:function(){return new e(y.LFG(y.R0b),y.LFG(_.K0))},token:e,providedIn:"root"}),e}(),ye={dragStartThreshold:5,pointerDirectionChangeThreshold:5},_e=function(){var e=function(){function e(t,n,i,r){(0,f.Z)(this,e),this._document=t,this._ngZone=n,this._viewportRuler=i,this._dragDropRegistry=r}return(0,m.Z)(e,[{key:"createDrag",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:ye;return new ne(e,t,this._document,this._ngZone,this._viewportRuler,this._dragDropRegistry)}},{key:"createDropList",value:function(e){return new ue(e,this._dragDropRegistry,this._document,this._ngZone,this._viewportRuler)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(y.LFG(_.K0),y.LFG(y.R0b),y.LFG(b.rL),y.LFG(ve))},e.\u0275prov=y.Yz7({factory:function(){return new e(y.LFG(_.K0),y.LFG(y.R0b),y.LFG(b.rL),y.LFG(ve))},token:e,providedIn:"root"}),e}(),be=function(){var e=function e(){(0,f.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=y.oAB({type:e}),e.\u0275inj=y.cJS({providers:[_e],imports:[b.ZD]}),e}(),we=n(93889),Se=n(37429),xe=n(61493),Ce=n(90838),ke=n(17504),Te=n(43161),Ae=[[["caption"]],[["colgroup"],["col"]]],Ze=["caption","colgroup, col"];function Me(e){return function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(){var e;(0,f.Z)(this,n);for(var i=arguments.length,r=new Array(i),o=0;o4&&void 0!==arguments[4])||arguments[4],a=!(arguments.length>5&&void 0!==arguments[5])||arguments[5],s=arguments.length>6?arguments[6]:void 0;(0,f.Z)(this,e),this._isNativeHtmlTable=t,this._stickCellCss=n,this.direction=i,this._coalescedStyleScheduler=r,this._isBrowser=o,this._needsPositionStickyOnElement=a,this._positionListener=s,this._cachedCellWidths=[],this._borderCellCss={top:"".concat(n,"-border-elem-top"),bottom:"".concat(n,"-border-elem-bottom"),left:"".concat(n,"-border-elem-left"),right:"".concat(n,"-border-elem-right")}}return(0,m.Z)(e,[{key:"clearStickyPositioning",value:function(e,t){var n,i=this,r=[],o=(0,l.Z)(e);try{for(o.s();!(n=o.n()).done;){var a=n.value;if(a.nodeType===a.ELEMENT_NODE){r.push(a);for(var s=0;s3&&void 0!==arguments[3])||arguments[3];if(e.length&&this._isBrowser&&(t.some(function(e){return e})||n.some(function(e){return e}))){var o=e[0],a=o.children.length,s=this._getCellWidths(o,r),c=this._getStickyStartColumnPositions(s,t),u=this._getStickyEndColumnPositions(s,n),d=t.lastIndexOf(!0),h=n.indexOf(!0);this._coalescedStyleScheduler.schedule(function(){var r,o="rtl"===i.direction,p=o?"right":"left",f=o?"left":"right",m=(0,l.Z)(e);try{for(m.s();!(r=m.n()).done;)for(var g=r.value,v=0;v1&&void 0!==arguments[1])||arguments[1];if(!t&&this._cachedCellWidths.length)return this._cachedCellWidths;for(var n=[],i=e.children,r=0;r0;r--)t[r]&&(n[r]=i,i+=e[r]);return n}}]),e}(),et=new y.OlP("CDK_SPL"),tt=function(){var e=function e(t,n){(0,f.Z)(this,e),this.viewContainer=t,this.elementRef=n};return e.\u0275fac=function(t){return new(t||e)(y.Y36(y.s_b),y.Y36(y.SBq))},e.\u0275dir=y.lG2({type:e,selectors:[["","rowOutlet",""]]}),e}(),nt=function(){var e=function e(t,n){(0,f.Z)(this,e),this.viewContainer=t,this.elementRef=n};return e.\u0275fac=function(t){return new(t||e)(y.Y36(y.s_b),y.Y36(y.SBq))},e.\u0275dir=y.lG2({type:e,selectors:[["","headerRowOutlet",""]]}),e}(),it=function(){var e=function e(t,n){(0,f.Z)(this,e),this.viewContainer=t,this.elementRef=n};return e.\u0275fac=function(t){return new(t||e)(y.Y36(y.s_b),y.Y36(y.SBq))},e.\u0275dir=y.lG2({type:e,selectors:[["","footerRowOutlet",""]]}),e}(),rt=function(){var e=function e(t,n){(0,f.Z)(this,e),this.viewContainer=t,this.elementRef=n};return e.\u0275fac=function(t){return new(t||e)(y.Y36(y.s_b),y.Y36(y.SBq))},e.\u0275dir=y.lG2({type:e,selectors:[["","noDataRowOutlet",""]]}),e}(),ot=function(){var e=function(){function e(t,n,i,r,o,a,s,l,c,u,d){(0,f.Z)(this,e),this._differs=t,this._changeDetectorRef=n,this._elementRef=i,this._dir=o,this._platform=s,this._viewRepeater=l,this._coalescedStyleScheduler=c,this._viewportRuler=u,this._stickyPositioningListener=d,this._onDestroy=new C.xQ,this._columnDefsByName=new Map,this._customColumnDefs=new Set,this._customRowDefs=new Set,this._customHeaderRowDefs=new Set,this._customFooterRowDefs=new Set,this._headerRowDefChanged=!0,this._footerRowDefChanged=!0,this._stickyColumnStylesNeedReset=!0,this._forceRecalculateCellWidths=!0,this._cachedRenderRowsMap=new Map,this.stickyCssClass="cdk-table-sticky",this.needsPositionStickyOnElement=!0,this._isShowingNoDataRow=!1,this._multiTemplateDataRows=!1,this._fixedLayout=!1,this.viewChange=new Ce.X({start:0,end:Number.MAX_VALUE}),r||this._elementRef.nativeElement.setAttribute("role","table"),this._document=a,this._isNativeHtmlTable="TABLE"===this._elementRef.nativeElement.nodeName}return(0,m.Z)(e,[{key:"trackBy",get:function(){return this._trackByFn},set:function(e){this._trackByFn=e}},{key:"dataSource",get:function(){return this._dataSource},set:function(e){this._dataSource!==e&&this._switchDataSource(e)}},{key:"multiTemplateDataRows",get:function(){return this._multiTemplateDataRows},set:function(e){this._multiTemplateDataRows=(0,S.Ig)(e),this._rowOutlet&&this._rowOutlet.viewContainer.length&&(this._forceRenderDataRows(),this.updateStickyColumnStyles())}},{key:"fixedLayout",get:function(){return this._fixedLayout},set:function(e){this._fixedLayout=(0,S.Ig)(e),this._forceRecalculateCellWidths=!0,this._stickyColumnStylesNeedReset=!0}},{key:"ngOnInit",value:function(){var e=this;this._setupStickyStyler(),this._isNativeHtmlTable&&this._applyNativeTableSections(),this._dataDiffer=this._differs.find([]).create(function(t,n){return e.trackBy?e.trackBy(n.dataIndex,n.data):n}),this._viewportRuler.change().pipe((0,O.R)(this._onDestroy)).subscribe(function(){e._forceRecalculateCellWidths=!0})}},{key:"ngAfterContentChecked",value:function(){this._cacheRowDefs(),this._cacheColumnDefs();var e=this._renderUpdatedColumns()||this._headerRowDefChanged||this._footerRowDefChanged;this._stickyColumnStylesNeedReset=this._stickyColumnStylesNeedReset||e,this._forceRecalculateCellWidths=e,this._headerRowDefChanged&&(this._forceRenderHeaderRows(),this._headerRowDefChanged=!1),this._footerRowDefChanged&&(this._forceRenderFooterRows(),this._footerRowDefChanged=!1),this.dataSource&&this._rowDefs.length>0&&!this._renderChangeSubscription?this._observeRenderChanges():this._stickyColumnStylesNeedReset&&this.updateStickyColumnStyles(),this._checkStickyStates()}},{key:"ngOnDestroy",value:function(){this._rowOutlet.viewContainer.clear(),this._noDataRowOutlet.viewContainer.clear(),this._headerRowOutlet.viewContainer.clear(),this._footerRowOutlet.viewContainer.clear(),this._cachedRenderRowsMap.clear(),this._onDestroy.next(),this._onDestroy.complete(),(0,Se.Z9)(this.dataSource)&&this.dataSource.disconnect(this)}},{key:"renderRows",value:function(){var e=this;this._renderRows=this._getAllRenderRows();var t=this._dataDiffer.diff(this._renderRows);if(t){var n=this._rowOutlet.viewContainer;this._viewRepeater.applyChanges(t,n,function(t,n,i){return e._getEmbeddedViewArgs(t.item,i)},function(e){return e.item.data},function(t){1===t.operation&&t.context&&e._renderCellTemplateForItem(t.record.item.rowDef,t.context)}),this._updateRowIndexContext(),t.forEachIdentityChange(function(e){n.get(e.currentIndex).context.$implicit=e.item.data}),this._updateNoDataRow(),this.updateStickyColumnStyles()}else this._updateNoDataRow()}},{key:"addColumnDef",value:function(e){this._customColumnDefs.add(e)}},{key:"removeColumnDef",value:function(e){this._customColumnDefs.delete(e)}},{key:"addRowDef",value:function(e){this._customRowDefs.add(e)}},{key:"removeRowDef",value:function(e){this._customRowDefs.delete(e)}},{key:"addHeaderRowDef",value:function(e){this._customHeaderRowDefs.add(e),this._headerRowDefChanged=!0}},{key:"removeHeaderRowDef",value:function(e){this._customHeaderRowDefs.delete(e),this._headerRowDefChanged=!0}},{key:"addFooterRowDef",value:function(e){this._customFooterRowDefs.add(e),this._footerRowDefChanged=!0}},{key:"removeFooterRowDef",value:function(e){this._customFooterRowDefs.delete(e),this._footerRowDefChanged=!0}},{key:"setNoDataRow",value:function(e){this._customNoDataRow=e}},{key:"updateStickyHeaderRowStyles",value:function(){var e=this._getRenderedRows(this._headerRowOutlet),t=this._elementRef.nativeElement.querySelector("thead");t&&(t.style.display=e.length?"":"none");var n=this._headerRowDefs.map(function(e){return e.sticky});this._stickyStyler.clearStickyPositioning(e,["top"]),this._stickyStyler.stickRows(e,n,"top"),this._headerRowDefs.forEach(function(e){return e.resetStickyChanged()})}},{key:"updateStickyFooterRowStyles",value:function(){var e=this._getRenderedRows(this._footerRowOutlet),t=this._elementRef.nativeElement.querySelector("tfoot");t&&(t.style.display=e.length?"":"none");var n=this._footerRowDefs.map(function(e){return e.sticky});this._stickyStyler.clearStickyPositioning(e,["bottom"]),this._stickyStyler.stickRows(e,n,"bottom"),this._stickyStyler.updateStickyFooterContainer(this._elementRef.nativeElement,n),this._footerRowDefs.forEach(function(e){return e.resetStickyChanged()})}},{key:"updateStickyColumnStyles",value:function(){var e=this,t=this._getRenderedRows(this._headerRowOutlet),n=this._getRenderedRows(this._rowOutlet),i=this._getRenderedRows(this._footerRowOutlet);(this._isNativeHtmlTable&&!this._fixedLayout||this._stickyColumnStylesNeedReset)&&(this._stickyStyler.clearStickyPositioning([].concat((0,p.Z)(t),(0,p.Z)(n),(0,p.Z)(i)),["left","right"]),this._stickyColumnStylesNeedReset=!1),t.forEach(function(t,n){e._addStickyColumnStyles([t],e._headerRowDefs[n])}),this._rowDefs.forEach(function(t){for(var i=[],r=0;r0&&this._headerRowOutlet.viewContainer.clear(),this._headerRowDefs.forEach(function(t,n){return e._renderRow(e._headerRowOutlet,t,n)}),this.updateStickyHeaderRowStyles()}},{key:"_forceRenderFooterRows",value:function(){var e=this;this._footerRowOutlet.viewContainer.length>0&&this._footerRowOutlet.viewContainer.clear(),this._footerRowDefs.forEach(function(t,n){return e._renderRow(e._footerRowOutlet,t,n)}),this.updateStickyFooterRowStyles()}},{key:"_addStickyColumnStyles",value:function(e,t){var n=this,i=Array.from(t.columns||[]).map(function(e){return n._columnDefsByName.get(e)}),r=i.map(function(e){return e.sticky}),o=i.map(function(e){return e.stickyEnd});this._stickyStyler.updateStickyColumns(e,r,o,!this._fixedLayout||this._forceRecalculateCellWidths)}},{key:"_getRenderedRows",value:function(e){for(var t=[],n=0;n3&&void 0!==arguments[3]?arguments[3]:{},r=e.viewContainer.createEmbeddedView(t.template,i,n);return this._renderCellTemplateForItem(t,i),r}},{key:"_renderCellTemplateForItem",value:function(e,t){var n,i=(0,l.Z)(this._getCellTemplates(e));try{for(i.s();!(n=i.n()).done;)We.mostRecentCellOutlet&&We.mostRecentCellOutlet._viewContainer.createEmbeddedView(n.value,t)}catch(r){i.e(r)}finally{i.f()}this._changeDetectorRef.markForCheck()}},{key:"_updateRowIndexContext",value:function(){for(var e=this._rowOutlet.viewContainer,t=0,n=e.length;t0;)n[i]=t[i+1];return Tt(e,n=n.map(Mt))}function Zt(e){for(var t=arguments,n=[],i=arguments.length-1;i-- >0;)n[i]=t[i+1];return n.map(Mt).reduce(function(t,n){var i=Ct(e,n);return-1!==i?t.concat(e.splice(i,1)):t},[])}function Mt(e,t){if("string"==typeof e)try{return document.querySelector(e)}catch(n){throw n}if(!xt(e)&&!t)throw new TypeError(e+" is not a DOM element.");return e}function Ot(e){if(e===window)return function(){var e={top:{value:0,enumerable:!0},left:{value:0,enumerable:!0},right:{value:window.innerWidth,enumerable:!0},bottom:{value:window.innerHeight,enumerable:!0},width:{value:window.innerWidth,enumerable:!0},height:{value:window.innerHeight,enumerable:!0},x:{value:0,enumerable:!0},y:{value:0,enumerable:!0}};if(Object.create)return Object.create({},e);var t={};return Object.defineProperties(t,e),t}();try{var t=e.getBoundingClientRect();return void 0===t.x&&(t.x=t.left,t.y=t.top),t}catch(n){throw new TypeError("Can't call getBoundingClientRect on "+e)}}var Et,Pt=void 0;"function"!=typeof Object.create?(Et=function(){},Pt=function(e,t){if(e!==Object(e)&&null!==e)throw TypeError("Argument must be an object, or null");Et.prototype=e||{};var n=new Et;return Et.prototype=null,void 0!==t&&Object.defineProperties(n,t),null===e&&(n.__proto__=null),n}):Pt=Object.create;var It=Pt,qt=["altKey","button","buttons","clientX","clientY","ctrlKey","metaKey","movementX","movementY","offsetX","offsetY","pageX","pageY","region","relatedTarget","screenX","screenY","shiftKey","which","x","y"];function Nt(e,t){t=t||{};for(var n=It(e),i=0;ir.right-n.margin.right?Math.ceil(Math.min(1,(s.x-r.right)/n.margin.right+1)*n.maxSpeed.right):0,i=s.yr.bottom-n.margin.bottom?Math.ceil(Math.min(1,(s.y-r.bottom)/n.margin.bottom+1)*n.maxSpeed.bottom):0,n.syncMove()&&c.dispatch(e,{pageX:s.pageX+t,pageY:s.pageY+i,clientX:s.x+t,clientY:s.y+i}),setTimeout(function(){i&&function(e,t){e===window?window.scrollTo(e.pageXOffset,e.pageYOffset+t):e.scrollTop+=t}(e,i),t&&function(e,t){e===window?window.scrollTo(e.pageXOffset+t,e.pageYOffset):e.scrollLeft+=t}(e,t)})}window.addEventListener("mousedown",g,!1),window.addEventListener("touchstart",g,!1),window.addEventListener("mouseup",v,!1),window.addEventListener("touchend",v,!1),window.addEventListener("pointerup",v,!1),window.addEventListener("mousemove",w,!1),window.addEventListener("touchmove",w,!1),window.addEventListener("mouseleave",_,!1),window.addEventListener("scroll",m,!0)}function jt(e,t,n){return n?e.y>n.top&&e.yn.left&&e.xn.top&&e.yn.left&&e.x0})}));return a.complete(),t})).subscribe(function(t){var n,i,r,a=t.x,s=t.y,l=t.dragCancelled;e.scroller.destroy(),e.zone.run(function(){e.dragEnd.next({x:a,y:s,dragCancelled:l})}),n=e.renderer,i=e.element,(r=e.dragActiveClass)&&r.split(" ").forEach(function(e){return n.removeClass(i.nativeElement,e)}),o.complete()}),(0,M.T)(l,d).pipe((0,I.q)(1)).subscribe(function(){requestAnimationFrame(function(){e.document.head.removeChild(n)})}),c}),(0,Ut.B)());(0,M.T)(t.pipe((0,I.q)(1),(0,P.U)(function(e){return[,e]})),t.pipe((0,Jt.G)())).pipe((0,pt.h)(function(e){var t=(0,s.Z)(e,2),n=t[0],i=t[1];return!n||n.x!==i.x||n.y!==i.y}),(0,P.U)(function(e){return(0,s.Z)(e,2)[1]})).subscribe(function(t){var n=t.x,i=t.y,r=t.currentDrag$,o=t.clientX,a=t.clientY,s=t.transformX,l=t.transformY,c=t.target;e.zone.run(function(){e.dragging.next({x:n,y:i})}),requestAnimationFrame(function(){if(e.ghostElement){var t="translate3d(".concat(s,"px, ").concat(l,"px, 0px)");e.setElementStyles(e.ghostElement,{transform:t,"-webkit-transform":t,"-ms-transform":t,"-moz-transform":t,"-o-transform":t})}}),r.next({clientX:o,clientY:a,dropData:e.dropData,target:c})})}},{key:"ngOnChanges",value:function(e){e.dragAxis&&this.checkEventListeners()}},{key:"ngOnDestroy",value:function(){this.unsubscribeEventListeners(),this.pointerDown$.complete(),this.pointerMove$.complete(),this.pointerUp$.complete(),this.destroy$.next()}},{key:"checkEventListeners",value:function(){var e=this,t=this.canDrag(),n=Object.keys(this.eventListenerSubscriptions).length>0;t&&!n?this.zone.runOutsideAngular(function(){e.eventListenerSubscriptions.mousedown=e.renderer.listen(e.element.nativeElement,"mousedown",function(t){e.onMouseDown(t)}),e.eventListenerSubscriptions.mouseup=e.renderer.listen("document","mouseup",function(t){e.onMouseUp(t)}),e.eventListenerSubscriptions.touchstart=e.renderer.listen(e.element.nativeElement,"touchstart",function(t){e.onTouchStart(t)}),e.eventListenerSubscriptions.touchend=e.renderer.listen("document","touchend",function(t){e.onTouchEnd(t)}),e.eventListenerSubscriptions.touchcancel=e.renderer.listen("document","touchcancel",function(t){e.onTouchEnd(t)}),e.eventListenerSubscriptions.mouseenter=e.renderer.listen(e.element.nativeElement,"mouseenter",function(){e.onMouseEnter()}),e.eventListenerSubscriptions.mouseleave=e.renderer.listen(e.element.nativeElement,"mouseleave",function(){e.onMouseLeave()})}):!t&&n&&this.unsubscribeEventListeners()}},{key:"onMouseDown",value:function(e){var t=this;0===e.button&&(this.eventListenerSubscriptions.mousemove||(this.eventListenerSubscriptions.mousemove=this.renderer.listen("document","mousemove",function(e){t.pointerMove$.next({event:e,clientX:e.clientX,clientY:e.clientY})})),this.pointerDown$.next({event:e,clientX:e.clientX,clientY:e.clientY}))}},{key:"onMouseUp",value:function(e){0===e.button&&(this.eventListenerSubscriptions.mousemove&&(this.eventListenerSubscriptions.mousemove(),delete this.eventListenerSubscriptions.mousemove),this.pointerUp$.next({event:e,clientX:e.clientX,clientY:e.clientY}))}},{key:"onTouchStart",value:function(e){var t,n,i,r=this;if((this.scrollContainer&&this.scrollContainer.activeLongPressDrag||this.touchStartLongPress)&&(this.timeLongPress.timerBegin=Date.now(),n=!1,i=this.hasScrollbar(),t=this.getScrollPosition()),!this.eventListenerSubscriptions.touchmove){var o=(0,ht.R)(this.document,"contextmenu").subscribe(function(e){e.preventDefault()}),a=(0,ht.R)(this.document,"touchmove",{passive:!1}).subscribe(function(o){(r.scrollContainer&&r.scrollContainer.activeLongPressDrag||r.touchStartLongPress)&&!n&&i&&(n=r.shouldBeginDrag(e,o,t)),(r.scrollContainer&&r.scrollContainer.activeLongPressDrag||r.touchStartLongPress)&&i&&!n||(o.preventDefault(),r.pointerMove$.next({event:o,clientX:o.targetTouches[0].clientX,clientY:o.targetTouches[0].clientY}))});this.eventListenerSubscriptions.touchmove=function(){o.unsubscribe(),a.unsubscribe()}}this.pointerDown$.next({event:e,clientX:e.touches[0].clientX,clientY:e.touches[0].clientY})}},{key:"onTouchEnd",value:function(e){this.eventListenerSubscriptions.touchmove&&(this.eventListenerSubscriptions.touchmove(),delete this.eventListenerSubscriptions.touchmove,(this.scrollContainer&&this.scrollContainer.activeLongPressDrag||this.touchStartLongPress)&&this.enableScroll()),this.pointerUp$.next({event:e,clientX:e.changedTouches[0].clientX,clientY:e.changedTouches[0].clientY})}},{key:"onMouseEnter",value:function(){this.setCursor(this.dragCursor)}},{key:"onMouseLeave",value:function(){this.setCursor("")}},{key:"canDrag",value:function(){return this.dragAxis.x||this.dragAxis.y}},{key:"setCursor",value:function(e){this.eventListenerSubscriptions.mousemove||this.renderer.setStyle(this.element.nativeElement,"cursor",e)}},{key:"unsubscribeEventListeners",value:function(){var e=this;Object.keys(this.eventListenerSubscriptions).forEach(function(t){e.eventListenerSubscriptions[t](),delete e.eventListenerSubscriptions[t]})}},{key:"setElementStyles",value:function(e,t){var n=this;Object.keys(t).forEach(function(i){n.renderer.setStyle(e,i,t[i])})}},{key:"getScrollElement",value:function(){return this.scrollContainer?this.scrollContainer.elementRef.nativeElement:this.document.body}},{key:"getScrollPosition",value:function(){return this.scrollContainer?{top:this.scrollContainer.elementRef.nativeElement.scrollTop,left:this.scrollContainer.elementRef.nativeElement.scrollLeft}:{top:window.pageYOffset||this.document.documentElement.scrollTop,left:window.pageXOffset||this.document.documentElement.scrollLeft}}},{key:"shouldBeginDrag",value:function(e,t,n){var i=this.getScrollPosition(),r=Math.abs(i.top-n.top),o=Math.abs(i.left-n.left),a=Math.abs(t.targetTouches[0].clientX-e.touches[0].clientX)-o,s=Math.abs(t.targetTouches[0].clientY-e.touches[0].clientY)-r,l=this.touchStartLongPress?this.touchStartLongPress:{delta:this.scrollContainer.longPressConfig.delta,delay:this.scrollContainer.longPressConfig.duration};return(a+s>l.delta||r>0||o>0)&&(this.timeLongPress.timerBegin=Date.now()),this.timeLongPress.timerEnd=Date.now(),this.timeLongPress.timerEnd-this.timeLongPress.timerBegin>=l.delay&&(this.disableScroll(),!0)}},{key:"enableScroll",value:function(){this.scrollContainer&&this.renderer.setStyle(this.scrollContainer.elementRef.nativeElement,"overflow",""),this.renderer.setStyle(this.document.body,"overflow","")}},{key:"disableScroll",value:function(){this.scrollContainer&&this.renderer.setStyle(this.scrollContainer.elementRef.nativeElement,"overflow","hidden"),this.renderer.setStyle(this.document.body,"overflow","hidden")}},{key:"hasScrollbar",value:function(){var e=this.getScrollElement();return e.scrollWidth>e.clientWidth||e.scrollHeight>e.clientHeight}}]),e}();return e.\u0275fac=function(t){return new(t||e)(y.Y36(y.SBq),y.Y36(y.Qsj),y.Y36(Gt),y.Y36(y.R0b),y.Y36(y.s_b),y.Y36(Wt,8),y.Y36(_.K0))},e.\u0275dir=y.lG2({type:e,selectors:[["","mwlDraggable",""]],inputs:{dragAxis:"dragAxis",dragSnapGrid:"dragSnapGrid",ghostDragEnabled:"ghostDragEnabled",showOriginalElementWhileDragging:"showOriginalElementWhileDragging",dragCursor:"dragCursor",autoScroll:"autoScroll",dropData:"dropData",validateDrag:"validateDrag",dragActiveClass:"dragActiveClass",ghostElementAppendTo:"ghostElementAppendTo",ghostElementTemplate:"ghostElementTemplate",touchStartLongPress:"touchStartLongPress"},outputs:{dragPointerDown:"dragPointerDown",dragStart:"dragStart",ghostElementCreated:"ghostElementCreated",dragging:"dragging",dragEnd:"dragEnd"},features:[y.TTD]}),e}(),Qt=function(){var e=function e(){(0,f.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=y.oAB({type:e}),e.\u0275inj=y.cJS({}),e}(),Xt=n(39095);function Kt(e,t){return et?1:e>=t?0:NaN}function $t(e){var t;return 1===e.length&&(t=e,e=function(e,n){return Kt(t(e),n)}),{left:function(t,n,i,r){for(null==i&&(i=0),null==r&&(r=t.length);i>>1;e(t[o],n)<0?i=o+1:r=o}return i},right:function(t,n,i,r){for(null==i&&(i=0),null==r&&(r=t.length);i>>1;e(t[o],n)>0?r=o:i=o+1}return i}}}var en=$t(Kt),tn=en.right,nn=en.left,rn=tn;function on(e,t){null==t&&(t=an);for(var n=0,i=e.length-1,r=e[0],o=new Array(i<0?0:i);ne?1:t>=e?0:NaN}function cn(e){return null===e?NaN:+e}function un(e,t){var n,i,r=e.length,o=0,a=-1,s=0,l=0;if(null==t)for(;++a1)return l/(o-1)}function dn(e,t){var n=un(e,t);return n?Math.sqrt(n):n}function hn(e,t){var n,i,r,o=e.length,a=-1;if(null==t){for(;++a=n)for(i=r=n;++an&&(i=n),r=n)for(i=r=n;++an&&(i=n),r0)return[e];if((i=t0)for(e=Math.ceil(e/a),t=Math.floor(t/a),o=new Array(r=Math.ceil(t-e+1));++s=0?(o>=_n?10:o>=bn?5:o>=wn?2:1)*Math.pow(10,r):-Math.pow(10,-r)/(o>=_n?10:o>=bn?5:o>=wn?2:1)}function Cn(e,t,n){var i=Math.abs(t-e)/Math.max(0,n),r=Math.pow(10,Math.floor(Math.log(i)/Math.LN10)),o=i/r;return o>=_n?r*=10:o>=bn?r*=5:o>=wn&&(r*=2),tu;)d.pop(),--h;var p,f=new Array(h+1);for(r=0;r<=h;++r)(p=f[r]=[]).x0=r>0?d[r-1]:c,p.x1=r=1)return+n(e[i-1],i-1,e);var i,r=(i-1)*t,o=Math.floor(r),a=+n(e[o],o,e);return a+(+n(e[o+1],o+1,e)-a)*(r-o)}}function Zn(e,t,n){return e=mn.call(e,cn).sort(Kt),Math.ceil((n-t)/(2*(An(e,.75)-An(e,.25))*Math.pow(e.length,-1/3)))}function Mn(e,t,n){return Math.ceil((n-t)/(3.5*dn(e)*Math.pow(e.length,-1/3)))}function On(e,t){var n,i,r=e.length,o=-1;if(null==t){for(;++o=n)for(i=n;++oi&&(i=n)}else for(;++o=n)for(i=n;++oi&&(i=n);return i}function En(e,t){var n,i=e.length,r=i,o=-1,a=0;if(null==t)for(;++o=0;)for(t=(i=e[r]).length;--t>=0;)n[--a]=i[t];return n}function qn(e,t){var n,i,r=e.length,o=-1;if(null==t){for(;++o=n)for(i=n;++on&&(i=n)}else for(;++o=n)for(i=n;++on&&(i=n);return i}function Nn(e,t){for(var n=t.length,i=new Array(n);n--;)i[n]=e[t[n]];return i}function Dn(e,t){if(n=e.length){var n,i,r=0,o=0,a=e[o];for(null==t&&(t=Kt);++r=0&&(n=e.slice(i+1),e=e.slice(0,i)),e&&!t.hasOwnProperty(e))throw new Error("unknown type: "+e);return{type:e,name:n}})}function oi(e,t){for(var n,i=0,r=e.length;i0)for(var n,i,r=new Array(n),o=0;o=0&&"xmlns"!==(t=e.slice(0,n))&&(e=e.slice(n+1)),ci.hasOwnProperty(t)?{space:ci[t],local:e}:e}function di(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===li&&t.documentElement.namespaceURI===li?t.createElement(e):t.createElementNS(n,e)}}function hi(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function pi(e){var t=ui(e);return(t.local?hi:di)(t)}function fi(){}function mi(e){return null==e?fi:function(){return this.querySelector(e)}}function gi(){return[]}function vi(e){return null==e?gi:function(){return this.querySelectorAll(e)}}var yi=function(e){return function(){return this.matches(e)}};if("undefined"!=typeof document){var _i=document.documentElement;if(!_i.matches){var bi=_i.webkitMatchesSelector||_i.msMatchesSelector||_i.mozMatchesSelector||_i.oMatchesSelector;yi=function(e){return function(){return bi.call(this,e)}}}}var wi=yi;function Si(e){return new Array(e.length)}function xi(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}function Ci(e,t,n,i,r,o){for(var a,s=0,l=t.length,c=o.length;st?1:e>=t?0:NaN}function Ai(e){return function(){this.removeAttribute(e)}}function Zi(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Mi(e,t){return function(){this.setAttribute(e,t)}}function Oi(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function Ei(e,t){return function(){var n=t.apply(this,arguments);null==n?this.removeAttribute(e):this.setAttribute(e,n)}}function Pi(e,t){return function(){var n=t.apply(this,arguments);null==n?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,n)}}function Ii(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function qi(e){return function(){this.style.removeProperty(e)}}function Ni(e,t,n){return function(){this.style.setProperty(e,t,n)}}function Di(e,t,n){return function(){var i=t.apply(this,arguments);null==i?this.style.removeProperty(e):this.style.setProperty(e,i,n)}}function Ri(e,t){return e.style.getPropertyValue(t)||Ii(e).getComputedStyle(e,null).getPropertyValue(t)}function Li(e){return function(){delete this[e]}}function Fi(e,t){return function(){this[e]=t}}function Bi(e,t){return function(){var n=t.apply(this,arguments);null==n?delete this[e]:this[e]=n}}function ji(e){return e.trim().split(/^|\s+/)}function zi(e){return e.classList||new Ui(e)}function Ui(e){this._node=e,this._names=ji(e.getAttribute("class")||"")}function Hi(e,t){for(var n=zi(e),i=-1,r=t.length;++i=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};var sr={},lr=null;function cr(e,t,n){return e=ur(e,t,n),function(t){var n=t.relatedTarget;n&&(n===this||8&n.compareDocumentPosition(this))||e.call(this,t)}}function ur(e,t,n){return function(i){var r=lr;lr=i;try{e.call(this,this.__data__,t,n)}finally{lr=r}}}function dr(e){return e.trim().split(/^|\s+/).map(function(e){var t="",n=e.indexOf(".");return n>=0&&(t=e.slice(n+1),e=e.slice(0,n)),{type:e,name:t}})}function hr(e){return function(){var t=this.__on;if(t){for(var n,i=0,r=-1,o=t.length;i=w&&(w=b+1);!(_=v[w])&&++w=0;)(i=r[o])&&(a&&a!==i.nextSibling&&a.parentNode.insertBefore(i,a),a=i);return this},sort:function(e){function t(t,n){return t&&n?e(t.__data__,n.__data__):!t-!n}e||(e=Ti);for(var n=this._groups,i=n.length,r=new Array(i),o=0;o1?this.each((null==t?qi:"function"==typeof t?Di:Ni)(e,t,null==n?"":n)):Ri(this.node(),e)},property:function(e,t){return arguments.length>1?this.each((null==t?Li:"function"==typeof t?Bi:Fi)(e,t)):this.node()[e]},classed:function(e,t){var n=ji(e+"");if(arguments.length<2){for(var i=zi(this.node()),r=-1,o=n.length;++r>8&15|t>>4&240,t>>4&15|240&t,(15&t)<<4|15&t,1):(t=Jr.exec(e))?to(parseInt(t[1],16)):(t=Gr.exec(e))?new oo(t[1],t[2],t[3],1):(t=Wr.exec(e))?new oo(255*t[1]/100,255*t[2]/100,255*t[3]/100,1):(t=Vr.exec(e))?no(t[1],t[2],t[3],t[4]):(t=Qr.exec(e))?no(255*t[1]/100,255*t[2]/100,255*t[3]/100,t[4]):(t=Xr.exec(e))?ao(t[1],t[2]/100,t[3]/100,1):(t=Kr.exec(e))?ao(t[1],t[2]/100,t[3]/100,t[4]):$r.hasOwnProperty(e)?to($r[e]):"transparent"===e?new oo(NaN,NaN,NaN,0):null}function to(e){return new oo(e>>16&255,e>>8&255,255&e,1)}function no(e,t,n,i){return i<=0&&(e=t=n=NaN),new oo(e,t,n,i)}function io(e){return e instanceof Fr||(e=eo(e)),e?new oo((e=e.rgb()).r,e.g,e.b,e.opacity):new oo}function ro(e,t,n,i){return 1===arguments.length?io(e):new oo(e,t,n,null==i?1:i)}function oo(e,t,n,i){this.r=+e,this.g=+t,this.b=+n,this.opacity=+i}function ao(e,t,n,i){return i<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new co(e,t,n,i)}function so(e){if(e instanceof co)return new co(e.h,e.s,e.l,e.opacity);if(e instanceof Fr||(e=eo(e)),!e)return new co;if(e instanceof co)return e;var t=(e=e.rgb()).r/255,n=e.g/255,i=e.b/255,r=Math.min(t,n,i),o=Math.max(t,n,i),a=NaN,s=o-r,l=(o+r)/2;return s?(a=t===o?(n-i)/s+6*(n0&&l<1?0:a,new co(a,s,l,e.opacity)}function lo(e,t,n,i){return 1===arguments.length?so(e):new co(e,t,n,null==i?1:i)}function co(e,t,n,i){this.h=+e,this.s=+t,this.l=+n,this.opacity=+i}function uo(e,t,n){return 255*(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)}Rr(Fr,eo,{displayable:function(){return this.rgb().displayable()},toString:function(){return this.rgb()+""}}),Rr(oo,ro,Lr(Fr,{brighter:function(e){return e=null==e?jr:Math.pow(jr,e),new oo(this.r*e,this.g*e,this.b*e,this.opacity)},darker:function(e){return e=null==e?Br:Math.pow(Br,e),new oo(this.r*e,this.g*e,this.b*e,this.opacity)},rgb:function(){return this},displayable:function(){return 0<=this.r&&this.r<=255&&0<=this.g&&this.g<=255&&0<=this.b&&this.b<=255&&0<=this.opacity&&this.opacity<=1},toString:function(){var e=this.opacity;return(1===(e=isNaN(e)?1:Math.max(0,Math.min(1,e)))?"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===e?")":", "+e+")")}})),Rr(co,lo,Lr(Fr,{brighter:function(e){return e=null==e?jr:Math.pow(jr,e),new co(this.h,this.s,this.l*e,this.opacity)},darker:function(e){return e=null==e?Br:Math.pow(Br,e),new co(this.h,this.s,this.l*e,this.opacity)},rgb:function(){var e=this.h%360+360*(this.h<0),t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,i=n+(n<.5?n:1-n)*t,r=2*n-i;return new oo(uo(e>=240?e-240:e+120,r,i),uo(e,r,i),uo(e<120?e+240:e-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}}));var ho=Math.PI/180,po=180/Math.PI,fo=.96422,mo=.82521,go=4/29,vo=6/29,yo=3*vo*vo;function _o(e){if(e instanceof wo)return new wo(e.l,e.a,e.b,e.opacity);if(e instanceof Zo){if(isNaN(e.h))return new wo(e.l,0,0,e.opacity);var t=e.h*ho;return new wo(e.l,Math.cos(t)*e.c,Math.sin(t)*e.c,e.opacity)}e instanceof oo||(e=io(e));var n,i,r=ko(e.r),o=ko(e.g),a=ko(e.b),s=So((.2225045*r+.7168786*o+.0606169*a)/1);return r===o&&o===a?n=i=s:(n=So((.4360747*r+.3850649*o+.1430804*a)/fo),i=So((.0139322*r+.0971045*o+.7141733*a)/mo)),new wo(116*s-16,500*(n-s),200*(s-i),e.opacity)}function bo(e,t,n,i){return 1===arguments.length?_o(e):new wo(e,t,n,null==i?1:i)}function wo(e,t,n,i){this.l=+e,this.a=+t,this.b=+n,this.opacity=+i}function So(e){return e>.008856451679035631?Math.pow(e,1/3):e/yo+go}function xo(e){return e>vo?e*e*e:yo*(e-go)}function Co(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function ko(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function To(e){if(e instanceof Zo)return new Zo(e.h,e.c,e.l,e.opacity);if(e instanceof wo||(e=_o(e)),0===e.a&&0===e.b)return new Zo(NaN,0,e.l,e.opacity);var t=Math.atan2(e.b,e.a)*po;return new Zo(t<0?t+360:t,Math.sqrt(e.a*e.a+e.b*e.b),e.l,e.opacity)}function Ao(e,t,n,i){return 1===arguments.length?To(e):new Zo(e,t,n,null==i?1:i)}function Zo(e,t,n,i){this.h=+e,this.c=+t,this.l=+n,this.opacity=+i}Rr(wo,bo,Lr(Fr,{brighter:function(e){return new wo(this.l+18*(null==e?1:e),this.a,this.b,this.opacity)},darker:function(e){return new wo(this.l-18*(null==e?1:e),this.a,this.b,this.opacity)},rgb:function(){var e=(this.l+16)/116,t=isNaN(this.a)?e:e+this.a/500,n=isNaN(this.b)?e:e-this.b/200;return new oo(Co(3.1338561*(t=fo*xo(t))-1.6168667*(e=1*xo(e))-.4906146*(n=mo*xo(n))),Co(-.9787684*t+1.9161415*e+.033454*n),Co(.0719453*t-.2289914*e+1.4052427*n),this.opacity)}})),Rr(Zo,Ao,Lr(Fr,{brighter:function(e){return new Zo(this.h,this.c,this.l+18*(null==e?1:e),this.opacity)},darker:function(e){return new Zo(this.h,this.c,this.l-18*(null==e?1:e),this.opacity)},rgb:function(){return _o(this).rgb()}}));var Mo=-.14861,Oo=1.78277,Eo=-.29227,Po=-.90649,Io=1.97294,qo=Io*Po,No=Io*Oo,Do=Oo*Eo-Po*Mo;function Ro(e){if(e instanceof Fo)return new Fo(e.h,e.s,e.l,e.opacity);e instanceof oo||(e=io(e));var t=e.g/255,n=e.b/255,i=(Do*n+qo*(e.r/255)-No*t)/(Do+qo-No),r=n-i,o=(Io*(t-i)-Eo*r)/Po,a=Math.sqrt(o*o+r*r)/(Io*i*(1-i)),s=a?Math.atan2(o,r)*po-120:NaN;return new Fo(s<0?s+360:s,a,i,e.opacity)}function Lo(e,t,n,i){return 1===arguments.length?Ro(e):new Fo(e,t,n,null==i?1:i)}function Fo(e,t,n,i){this.h=+e,this.s=+t,this.l=+n,this.opacity=+i}function Bo(e,t,n,i,r){var o=e*e,a=o*e;return((1-3*e+3*o-a)*t+(4-6*o+3*a)*n+(1+3*e+3*o-3*a)*i+a*r)/6}function jo(e){var t=e.length-1;return function(n){var i=n<=0?n=0:n>=1?(n=1,t-1):Math.floor(n*t),r=e[i],o=e[i+1];return Bo((n-i/t)*t,i>0?e[i-1]:2*r-o,r,o,i180||n<-180?n-360*Math.round(n/360):n):Uo(isNaN(e)?t:e)}function Jo(e,t){var n=t-e;return n?Ho(e,n):Uo(isNaN(e)?t:e)}Rr(Fo,Lo,Lr(Fr,{brighter:function(e){return e=null==e?jr:Math.pow(jr,e),new Fo(this.h,this.s,this.l*e,this.opacity)},darker:function(e){return e=null==e?Br:Math.pow(Br,e),new Fo(this.h,this.s,this.l*e,this.opacity)},rgb:function(){var e=isNaN(this.h)?0:(this.h+120)*ho,t=+this.l,n=isNaN(this.s)?0:this.s*t*(1-t),i=Math.cos(e),r=Math.sin(e);return new oo(255*(t+n*(Mo*i+Oo*r)),255*(t+n*(Eo*i+Po*r)),255*(t+n*(Io*i)),this.opacity)}}));var Go=function e(t){var n=function(e){return 1==(e=+e)?Jo:function(t,n){return n-t?function(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(i){return Math.pow(e+i*t,n)}}(t,n,e):Uo(isNaN(t)?n:t)}}(t);function i(e,t){var i=n((e=ro(e)).r,(t=ro(t)).r),r=n(e.g,t.g),o=n(e.b,t.b),a=Jo(e.opacity,t.opacity);return function(t){return e.r=i(t),e.g=r(t),e.b=o(t),e.opacity=a(t),e+""}}return i.gamma=e,i}(1);function Wo(e){return function(t){var n,i,r=t.length,o=new Array(r),a=new Array(r),s=new Array(r);for(n=0;no&&(r=t.slice(o,r),s[a]?s[a]+=r:s[++a]=r),(n=n[0])===(i=i[0])?s[a]?s[a]+=i:s[++a]=i:(s[++a]=null,l.push({i:a,x:$o(n,i)})),o=na.lastIndex;return o180?t+=360:t-e>180&&(e+=360),o.push({i:n.push(r(n)+"rotate(",null,i)-2,x:$o(e,t)})):t&&n.push(r(n)+"rotate("+t+i)}(o.rotate,a.rotate,s,l),function(e,t,n,o){e!==t?o.push({i:n.push(r(n)+"skewX(",null,i)-2,x:$o(e,t)}):t&&n.push(r(n)+"skewX("+t+i)}(o.skewX,a.skewX,s,l),function(e,t,n,i,o,a){if(e!==n||t!==i){var s=o.push(r(o)+"scale(",null,",",null,")");a.push({i:s-4,x:$o(e,n)},{i:s-2,x:$o(t,i)})}else 1===n&&1===i||o.push(r(o)+"scale("+n+","+i+")")}(o.scaleX,o.scaleY,a.scaleX,a.scaleY,s,l),o=a=null,function(e){for(var t,n=-1,i=l.length;++n=0&&t._call.call(null,e),t=t._next;--Pa}function Ya(){Da=(Na=La.now())+Ra,Pa=Ia=0;try{Ha()}finally{Pa=0,function(){for(var e,t,n=Oa,i=1/0;n;)n._call?(i>n._time&&(i=n._time),e=n,n=n._next):(t=n._next,n._next=null,n=e?e._next=t:Oa=t);Ea=e,Ga(i)}(),Da=0}}function Ja(){var e=La.now(),t=e-Na;t>1e3&&(Ra-=t,Na=e)}function Ga(e){Pa||(Ia&&(Ia=clearTimeout(Ia)),e-Da>24?(e<1/0&&(Ia=setTimeout(Ya,e-La.now()-Ra)),qa&&(qa=clearInterval(qa))):(qa||(Na=La.now(),qa=setInterval(Ja,1e3)),Pa=1,Fa(Ya)))}function Wa(e,t,n){var i=new za;return i.restart(function(n){i.stop(),e(n+t)},t=null==t?0:+t,n),i}za.prototype=Ua.prototype={constructor:za,restart:function(e,t,n){if("function"!=typeof e)throw new TypeError("callback is not a function");n=(null==n?Ba():+n)+(null==t?0:+t),this._next||Ea===this||(Ea?Ea._next=this:Oa=this,Ea=this),this._call=e,this._time=n,Ga()},stop:function(){this._call&&(this._call=null,this._time=1/0,Ga())}};var Va=si("start","end","interrupt"),Qa=[];function Xa(e,t,n,i,r,o){var a=e.__transition;if(a){if(n in a)return}else e.__transition={};!function(e,t,n){var i,r=e.__transition;function o(l){var c,u,d,h;if(1!==n.state)return s();for(c in r)if((h=r[c]).name===n.name){if(3===h.state)return Wa(o);4===h.state?(h.state=6,h.timer.stop(),h.on.call("interrupt",e,e.__data__,h.index,h.group),delete r[c]):+c0)throw new Error("too late; already scheduled");return n}function $a(e,t){var n=es(e,t);if(n.state>2)throw new Error("too late; already started");return n}function es(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw new Error("transition not found");return n}function ts(e,t){var n,i,r,o=e.__transition,a=!0;if(o){for(r in t=null==t?null:t+"",o)(n=o[r]).name===t?(i=n.state>2&&n.state<5,n.state=6,n.timer.stop(),i&&n.on.call("interrupt",e,e.__data__,n.index,n.group),delete o[r]):a=!1;a&&delete e.__transition}}function ns(e,t){var n,i;return function(){var r=$a(this,e),o=r.tween;if(o!==n)for(var a=0,s=(i=n=o).length;a=0&&(e=e.slice(0,t)),!e||"start"===e})}(t)?Ka:$a;return function(){var a=o(this,e),s=a.on;s!==i&&(r=(i=s).copy()).on(t,n),a.on=r}}var bs=wr.prototype.constructor;function ws(e,t,n){function i(){var i=this,r=t.apply(i,arguments);return r&&function(t){i.style.setProperty(e,r(t),n)}}return i._value=t,i}var Ss=0;function xs(e,t,n,i){this._groups=e,this._parents=t,this._name=n,this._id=i}function Cs(e){return wr().transition(e)}function ks(){return++Ss}var Ts=wr.prototype;function As(e){return e*e*e}function Zs(e){return--e*e*e+1}function Ms(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}xs.prototype=Cs.prototype={constructor:xs,select:function(e){var t=this._name,n=this._id;"function"!=typeof e&&(e=mi(e));for(var i=this._groups,r=i.length,o=new Array(r),a=0;a1&&n.name===t)return new xs([[e]],Ps,t,+i);return null}function qs(e){return function(){return e}}function Ns(e,t,n){this.target=e,this.type=t,this.selection=n}function Ds(){lr.stopImmediatePropagation()}function Rs(){lr.preventDefault(),lr.stopImmediatePropagation()}var Ls={name:"drag"},Fs={name:"space"},Bs={name:"handle"},js={name:"center"},zs={name:"x",handles:["e","w"].map(Qs),input:function(e,t){return e&&[[e[0],t[0][1]],[e[1],t[1][1]]]},output:function(e){return e&&[e[0][0],e[1][0]]}},Us={name:"y",handles:["n","s"].map(Qs),input:function(e,t){return e&&[[t[0][0],e[0]],[t[1][0],e[1]]]},output:function(e){return e&&[e[0][1],e[1][1]]}},Hs={name:"xy",handles:["n","e","s","w","nw","ne","se","sw"].map(Qs),input:function(e){return e},output:function(e){return e}},Ys={overlay:"crosshair",selection:"move",n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},Js={e:"w",w:"e",nw:"ne",ne:"nw",se:"sw",sw:"se"},Gs={n:"s",s:"n",nw:"sw",ne:"se",se:"ne",sw:"nw"},Ws={overlay:1,selection:1,n:null,e:1,s:null,w:-1,nw:-1,ne:1,se:1,sw:-1},Vs={overlay:1,selection:1,n:-1,e:null,s:1,w:null,nw:-1,ne:-1,se:1,sw:1};function Qs(e){return{type:e}}function Xs(){return!lr.button}function Ks(){var e=this.ownerSVGElement||this;return[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]}function $s(e){for(;!e.__brush;)if(!(e=e.parentNode))return;return e.__brush}function el(e){return e[0][0]===e[1][0]||e[0][1]===e[1][1]}function tl(e){var t=e.__brush;return t?t.dim.output(t.selection):null}function nl(){return ol(zs)}function il(){return ol(Us)}function rl(){return ol(Hs)}function ol(e){var t,n=Ks,i=Xs,r=si(a,"start","brush","end"),o=6;function a(t){var n=t.property("__brush",d).selectAll(".overlay").data([Qs("overlay")]);n.enter().append("rect").attr("class","overlay").attr("pointer-events","all").attr("cursor",Ys.overlay).merge(n).each(function(){var e=$s(this).extent;Sr(this).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(".selection").data([Qs("selection")]).enter().append("rect").attr("class","selection").attr("cursor",Ys.selection).attr("fill","#777").attr("fill-opacity",.3).attr("stroke","#fff").attr("shape-rendering","crispEdges");var i=t.selectAll(".handle").data(e.handles,function(e){return e.type});i.exit().remove(),i.enter().append("rect").attr("class",function(e){return"handle handle--"+e.type}).attr("cursor",function(e){return Ys[e.type]}),t.each(s).attr("fill","none").attr("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush touchstart.brush",u)}function s(){var e=Sr(this),t=$s(this).selection;t?(e.selectAll(".selection").style("display",null).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(".handle").style("display",null).attr("x",function(e){return"e"===e.type[e.type.length-1]?t[1][0]-o/2:t[0][0]-o/2}).attr("y",function(e){return"s"===e.type[0]?t[1][1]-o/2:t[0][1]-o/2}).attr("width",function(e){return"n"===e.type||"s"===e.type?t[1][0]-t[0][0]+o:o}).attr("height",function(e){return"e"===e.type||"w"===e.type?t[1][1]-t[0][1]+o:o})):e.selectAll(".selection,.handle").style("display","none").attr("x",null).attr("y",null).attr("width",null).attr("height",null)}function l(e,t){return e.__brush.emitter||new c(e,t)}function c(e,t){this.that=e,this.args=t,this.state=e.__brush,this.active=0}function u(){if(lr.touches){if(lr.changedTouches.lengthMath.abs(e[1]-P[1])?v=!0:g=!0),P=e,m=!0,Rs(),L()}function L(){var e;switch(p=P[0]-E[0],f=P[1]-E[1],b){case Fs:case Ls:w&&(p=Math.max(T-n,Math.min(Z-c,p)),r=n+p,u=c+p),S&&(f=Math.max(A-o,Math.min(M-d,f)),a=o+f,h=d+f);break;case Bs:w<0?(p=Math.max(T-n,Math.min(Z-n,p)),r=n+p,u=c):w>0&&(p=Math.max(T-c,Math.min(Z-c,p)),r=n,u=c+p),S<0?(f=Math.max(A-o,Math.min(M-o,f)),a=o+f,h=d):S>0&&(f=Math.max(A-d,Math.min(M-d,f)),a=o,h=d+f);break;case js:w&&(r=Math.max(T,Math.min(Z,n-p*w)),u=Math.max(T,Math.min(Z,c+p*w))),S&&(a=Math.max(A,Math.min(M,o-f*S)),h=Math.max(A,Math.min(M,d+f*S)))}u0&&(n=r-p),S<0?d=h-f:S>0&&(o=a-f),b=Fs,N.attr("cursor",Ys.selection),L());break;default:return}Rs()}function j(){switch(lr.keyCode){case 16:O&&(g=v=O=!1,L());break;case 18:b===js&&(w<0?c=u:w>0&&(n=r),S<0?d=h:S>0&&(o=a),b=Bs,L());break;case 32:b===Fs&&(lr.altKey?(w&&(c=u-p*w,n=r+p*w),S&&(d=h-f*S,o=a+f*S),b=js):(w<0?c=u:w>0&&(n=r),S<0?d=h:S>0&&(o=a),b=Bs),N.attr("cursor",Ys[_]),L());break;default:return}Rs()}}function d(){var t=this.__brush||{selection:null};return t.extent=n.apply(this,arguments),t.dim=e,t}return a.move=function(t,n){t.selection?t.on("start.brush",function(){l(this,arguments).beforestart().start()}).on("interrupt.brush end.brush",function(){l(this,arguments).end()}).tween("brush",function(){var t=this,i=t.__brush,r=l(t,arguments),o=i.selection,a=e.input("function"==typeof n?n.apply(this,arguments):n,i.extent),c=ra(o,a);function u(e){i.selection=1===e&&el(a)?null:c(e),s.call(t),r.brush()}return o&&a?u:u(1)}):t.each(function(){var t=this,i=arguments,r=t.__brush,o=e.input("function"==typeof n?n.apply(t,i):n,r.extent),a=l(t,i).beforestart();ts(t),r.selection=null==o||el(o)?null:o,s.call(t),a.start().brush().end()})},c.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},brush:function(){return this.emit("brush"),this},end:function(){return 0==--this.active&&(delete this.state.emitter,this.emit("end")),this},emit:function(t){fr(new Ns(a,t,e.output(this.state.selection)),r.apply,r,[t,this.that,this.args])}},a.extent=function(e){return arguments.length?(n="function"==typeof e?e:qs([[+e[0][0],+e[0][1]],[+e[1][0],+e[1][1]]]),a):n},a.filter=function(e){return arguments.length?(i="function"==typeof e?e:qs(!!e),a):i},a.handleSize=function(e){return arguments.length?(o=+e,a):o},a.on=function(){var e=r.on.apply(r,arguments);return e===r?a:e},a}var al=Math.cos,sl=Math.sin,ll=Math.PI,cl=ll/2,ul=2*ll,dl=Math.max;function hl(e){return function(t,n){return e(t.source.value+t.target.value,n.source.value+n.target.value)}}function pl(){var e=0,t=null,n=null,i=null;function r(r){var o,a,s,l,c,u,d=r.length,h=[],p=yn(d),f=[],m=[],g=m.groups=new Array(d),v=new Array(d*d);for(o=0,c=-1;++cyl)if(Math.abs(u*s-l*c)>yl&&r){var h=n-o,p=i-a,f=s*s+l*l,m=h*h+p*p,g=Math.sqrt(f),v=Math.sqrt(d),y=r*Math.tan((gl-Math.acos((f+d-m)/(2*g*v)))/2),_=y/v,b=y/g;Math.abs(_-1)>yl&&(this._+="L"+(e+_*c)+","+(t+_*u)),this._+="A"+r+","+r+",0,0,"+ +(u*h>c*p)+","+(this._x1=e+b*s)+","+(this._y1=t+b*l)}else this._+="L"+(this._x1=e)+","+(this._y1=t)},arc:function(e,t,n,i,r,o){e=+e,t=+t,o=!!o;var a=(n=+n)*Math.cos(i),s=n*Math.sin(i),l=e+a,c=t+s,u=1^o,d=o?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)>yl||Math.abs(this._y1-c)>yl)&&(this._+="L"+l+","+c),n&&(d<0&&(d=d%vl+vl),d>_l?this._+="A"+n+","+n+",0,1,"+u+","+(e-a)+","+(t-s)+"A"+n+","+n+",0,1,"+u+","+(this._x1=l)+","+(this._y1=c):d>yl&&(this._+="A"+n+","+n+",0,"+ +(d>=gl)+","+u+","+(this._x1=e+n*Math.cos(r))+","+(this._y1=t+n*Math.sin(r))))},rect:function(e,t,n,i){this._+="M"+(this._x0=this._x1=+e)+","+(this._y0=this._y1=+t)+"h"+ +n+"v"+ +i+"h"+-n+"Z"},toString:function(){return this._}};var Sl=wl;function xl(e){return e.source}function Cl(e){return e.target}function kl(e){return e.radius}function Tl(e){return e.startAngle}function Al(e){return e.endAngle}function Zl(){var e=xl,t=Cl,n=kl,i=Tl,r=Al,o=null;function a(){var a,s=fl.call(arguments),l=e.apply(this,s),c=t.apply(this,s),u=+n.apply(this,(s[0]=l,s)),d=i.apply(this,s)-cl,h=r.apply(this,s)-cl,p=u*al(d),f=u*sl(d),m=+n.apply(this,(s[0]=c,s)),g=i.apply(this,s)-cl,v=r.apply(this,s)-cl;if(o||(o=a=Sl()),o.moveTo(p,f),o.arc(0,0,u,d,h),d===g&&h===v||(o.quadraticCurveTo(0,0,m*al(g),m*sl(g)),o.arc(0,0,m,g,v)),o.quadraticCurveTo(0,0,p,f),o.closePath(),a)return o=null,a+""||null}return a.radius=function(e){return arguments.length?(n="function"==typeof e?e:ml(+e),a):n},a.startAngle=function(e){return arguments.length?(i="function"==typeof e?e:ml(+e),a):i},a.endAngle=function(e){return arguments.length?(r="function"==typeof e?e:ml(+e),a):r},a.source=function(t){return arguments.length?(e=t,a):e},a.target=function(e){return arguments.length?(t=e,a):t},a.context=function(e){return arguments.length?(o=null==e?null:e,a):o},a}var Ml="$";function Ol(){}function El(e,t){var n=new Ol;if(e instanceof Ol)e.each(function(e,t){n.set(t,e)});else if(Array.isArray(e)){var i,r=-1,o=e.length;if(null==t)for(;++r=i.length)return null!=e&&n.sort(e),null!=t?t(n):n;for(var l,c,u,d=-1,h=n.length,p=i[r++],f=Pl(),m=a();++di.length)return e;var o,s=r[n-1];return null!=t&&n>=i.length?o=e.entries():(o=[],e.each(function(e,t){o.push({key:t,values:a(e,n)})})),null!=s?o.sort(function(e,t){return s(e.key,t.key)}):o}return n={object:function(e){return o(e,0,ql,Nl)},map:function(e){return o(e,0,Dl,Rl)},entries:function(e){return a(o(e,0,Dl,Rl),0)},key:function(e){return i.push(e),n},sortKeys:function(e){return r[i.length-1]=e,n},sortValues:function(t){return e=t,n},rollup:function(e){return t=e,n}}}function ql(){return{}}function Nl(e,t,n){e[t]=n}function Dl(){return Pl()}function Rl(e,t,n){e.set(t,n)}function Ll(){}var Fl=Pl.prototype;function Bl(e,t){var n=new Ll;if(e instanceof Ll)e.each(function(e){n.add(e)});else if(e){var i=-1,r=e.length;if(null==t)for(;++ii!=p>i&&n<(h-c)*(i-u)/(p-u)+c&&(r=-r)}return r}function Ql(e,t,n){var i,r,o,a;return function(e,t,n){return(t[0]-e[0])*(n[1]-e[1])==(n[0]-e[0])*(t[1]-e[1])}(e,t,n)&&(r=e[i=+(e[0]===t[0])],a=t[i],r<=(o=n[i])&&o<=a||a<=o&&o<=r)}function Xl(){}var Kl=[[],[[[1,1.5],[.5,1]]],[[[1.5,1],[1,1.5]]],[[[1.5,1],[.5,1]]],[[[1,.5],[1.5,1]]],[[[1,1.5],[.5,1]],[[1,.5],[1.5,1]]],[[[1,.5],[1,1.5]]],[[[1,.5],[.5,1]]],[[[.5,1],[1,.5]]],[[[1,1.5],[1,.5]]],[[[.5,1],[1,.5]],[[1.5,1],[1,1.5]]],[[[1.5,1],[1,.5]]],[[[.5,1],[1.5,1]]],[[[1,1.5],[1.5,1]]],[[[.5,1],[1,1.5]]],[]];function $l(){var e=1,t=1,n=kn,i=s;function r(e){var t=n(e);if(Array.isArray(t))t=t.slice().sort(Jl);else{var i=hn(e),r=i[0],a=i[1];t=Cn(r,a,t),t=yn(Math.floor(r/t)*t,Math.floor(a/t)*t,t)}return t.map(function(t){return o(e,t)})}function o(n,r){var o=[],s=[];return function(n,i,r){var o,s,l,c,u,d=new Array,h=new Array;for(o=s=-1,Kl[(l=n[0]>=i)<<1].forEach(p);++o=i)<<1].forEach(p);for(Kl[l<<0].forEach(p);++s=i)<<1|(c=n[s*e]>=i)<<2].forEach(p);++o=i)<<1|(c=n[s*e+o+1]>=i)<<2|u<<3].forEach(p);Kl[l|c<<3].forEach(p)}for(o=-1,Kl[(c=n[s*e]>=i)<<2].forEach(p);++o=i)<<2|u<<3].forEach(p);function p(e){var t,n,i=[e[0][0]+o,e[0][1]+s],l=[e[1][0]+o,e[1][1]+s],c=a(i),u=a(l);(t=h[c])?(n=d[u])?(delete h[t.end],delete d[n.start],t===n?(t.ring.push(l),r(t.ring)):d[t.start]=h[n.end]={start:t.start,end:n.end,ring:t.ring.concat(n.ring)}):(delete h[t.end],t.ring.push(l),h[t.end=u]=t):(t=d[u])?(n=h[c])?(delete d[t.start],delete h[n.end],t===n?(t.ring.push(l),r(t.ring)):d[n.start]=h[t.end]={start:n.start,end:t.end,ring:n.ring.concat(t.ring)}):(delete d[t.start],t.ring.unshift(i),d[t.start=c]=t):d[c]=h[u]={start:c,end:u,ring:[i,l]}}Kl[c<<3].forEach(p)}(n,r,function(e){i(e,n,r),function(e){for(var t=0,n=e.length,i=e[n-1][1]*e[0][0]-e[n-1][0]*e[0][1];++t0?o.push([e]):s.push(e)}),s.forEach(function(e){for(var t,n=0,i=o.length;n0&&a0&&s0&&o>0))throw new Error("invalid size");return e=i,t=o,r},r.thresholds=function(e){return arguments.length?(n="function"==typeof e?e:Array.isArray(e)?Gl(Yl.call(e)):Gl(e),r):n},r.smooth=function(e){return arguments.length?(i=e?s:Xl,r):i===s},r}function ec(e,t,n){for(var i=e.width,r=e.height,o=1+(n<<1),a=0;a=n&&(s>=o&&(l-=e.data[s-o+a*i]),t.data[s-n+a*i]=l/Math.min(s+1,i-1+o-s,o))}function tc(e,t,n){for(var i=e.width,r=e.height,o=1+(n<<1),a=0;a=n&&(s>=o&&(l-=e.data[a+(s-o)*i]),t.data[a+(s-n)*i]=l/Math.min(s+1,r-1+o-s,o))}function nc(e){return e[0]}function ic(e){return e[1]}function rc(){var e=nc,t=ic,n=960,i=500,r=20,o=2,a=3*r,s=n+2*a>>o,l=i+2*a>>o,c=Gl(20);function u(n){var i=new Float32Array(s*l),u=new Float32Array(s*l);n.forEach(function(n,r,c){var u=e(n,r,c)+a>>o,d=t(n,r,c)+a>>o;u>=0&&u=0&&d>o),tc({width:s,height:l,data:u},{width:s,height:l,data:i},r>>o),ec({width:s,height:l,data:i},{width:s,height:l,data:u},r>>o),tc({width:s,height:l,data:u},{width:s,height:l,data:i},r>>o),ec({width:s,height:l,data:i},{width:s,height:l,data:u},r>>o),tc({width:s,height:l,data:u},{width:s,height:l,data:i},r>>o);var h=c(i);if(!Array.isArray(h)){var p=On(i);h=Cn(0,p,h),(h=yn(0,Math.floor(p/h)*h,h)).shift()}return $l().thresholds(h).size([s,l])(i).map(d)}function d(e){return e.value*=Math.pow(2,-2*o),e.coordinates.forEach(h),e}function h(e){e.forEach(p)}function p(e){e.forEach(f)}function f(e){e[0]=e[0]*Math.pow(2,o)-a,e[1]=e[1]*Math.pow(2,o)-a}function m(){return s=n+2*(a=3*r)>>o,l=i+2*a>>o,u}return u.x=function(t){return arguments.length?(e="function"==typeof t?t:Gl(+t),u):e},u.y=function(e){return arguments.length?(t="function"==typeof e?e:Gl(+e),u):t},u.size=function(e){if(!arguments.length)return[n,i];var t=Math.ceil(e[0]),r=Math.ceil(e[1]);if(!(t>=0||t>=0))throw new Error("invalid size");return n=t,i=r,m()},u.cellSize=function(e){if(!arguments.length)return 1<=1))throw new Error("invalid cell size");return o=Math.floor(Math.log(e)/Math.LN2),m()},u.thresholds=function(e){return arguments.length?(c="function"==typeof e?e:Array.isArray(e)?Gl(Yl.call(e)):Gl(e),u):c},u.bandwidth=function(e){if(!arguments.length)return Math.sqrt(r*(r+1));if(!((e=+e)>=0))throw new Error("invalid bandwidth");return r=Math.round((Math.sqrt(4*e*e+1)-1)/2),m()},u}function oc(e){return function(){return e}}function ac(e,t,n,i,r,o,a,s,l,c){this.target=e,this.type=t,this.subject=n,this.identifier=i,this.active=r,this.x=o,this.y=a,this.dx=s,this.dy=l,this._=c}function sc(){return!lr.ctrlKey&&!lr.button}function lc(){return this.parentNode}function cc(e){return null==e?{x:lr.x,y:lr.y}:e}function uc(){return navigator.maxTouchPoints||"ontouchstart"in this}function dc(){var e,t,n,i,r=sc,o=lc,a=cc,s=uc,l={},c=si("start","drag","end"),u=0,d=0;function h(e){e.on("mousedown.drag",p).filter(s).on("touchstart.drag",g).on("touchmove.drag",v).on("touchend.drag touchcancel.drag",y).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function p(){if(!i&&r.apply(this,arguments)){var a=_("mouse",o.apply(this,arguments),Mr,this,arguments);a&&(Sr(lr.view).on("mousemove.drag",f,!0).on("mouseup.drag",m,!0),Nr(lr.view),Ir(),n=!1,e=lr.clientX,t=lr.clientY,a("start"))}}function f(){if(qr(),!n){var i=lr.clientX-e,r=lr.clientY-t;n=i*i+r*r>d}l.mouse("drag")}function m(){Sr(lr.view).on("mousemove.drag mouseup.drag",null),Dr(lr.view,n),qr(),l.mouse("end")}function g(){if(r.apply(this,arguments)){var e,t,n=lr.changedTouches,i=o.apply(this,arguments),a=n.length;for(e=0;e=o?l=!0:10===(i=e.charCodeAt(a++))?c=!0:13===i&&(c=!0,10===e.charCodeAt(a)&&++a),e.slice(r+1,t-1).replace(/""/g,'"')}for(;a=(o=(m+v)/2))?m=o:v=o,(u=n>=(a=(g+y)/2))?g=a:y=a,r=p,!(p=p[d=u<<1|c]))return r[d]=f,e;if(s=+e._x.call(null,p.data),l=+e._y.call(null,p.data),t===s&&n===l)return f.next=p,r?r[d]=f:e._root=f,e;do{r=r?r[d]=new Array(4):e._root=new Array(4),(c=t>=(o=(m+v)/2))?m=o:v=o,(u=n>=(a=(g+y)/2))?g=a:y=a}while((d=u<<1|c)==(h=(l>=a)<<1|s>=o));return r[h]=p,r[d]=f,e}function su(e,t,n,i,r){this.node=e,this.x0=t,this.y0=n,this.x1=i,this.y1=r}function lu(e){return e[0]}function cu(e){return e[1]}function uu(e,t,n){var i=new du(null==t?lu:t,null==n?cu:n,NaN,NaN,NaN,NaN);return null==e?i:i.addAll(e)}function du(e,t,n,i,r,o){this._x=e,this._y=t,this._x0=n,this._y0=i,this._x1=r,this._y1=o,this._root=void 0}function hu(e){for(var t={data:e.data},n=t;e=e.next;)n=n.next={data:e.data};return t}var pu=uu.prototype=du.prototype;function fu(e){return e.x+e.vx}function mu(e){return e.y+e.vy}function gu(e){var t,n,i=1,r=1;function o(){for(var e,o,s,l,c,u,d,h=t.length,p=0;pl+p||rc+p||os.index){var f=l-a.x-a.vx,m=c-a.y-a.vy,g=f*f+m*m;ge.r&&(e.r=e[t].r)}function s(){if(t){var i,r,o=t.length;for(n=new Array(o),i=0;iu&&(u=i),rd&&(d=r));if(l>u||c>d)return this;for(this.cover(l,c).cover(u,d),n=0;ne||e>=r||i>t||t>=o;)switch(s=(th||(o=l.y0)>p||(a=l.x1)=v)<<1|e>=g)&&(l=f[f.length-1],f[f.length-1]=f[f.length-1-c],f[f.length-1-c]=l)}else{var y=e-+this._x.call(null,m.data),_=t-+this._y.call(null,m.data),b=y*y+_*_;if(b=(s=(f+g)/2))?f=s:g=s,(u=a>=(l=(m+v)/2))?m=l:v=l,t=p,!(p=p[d=u<<1|c]))return this;if(!p.length)break;(t[d+1&3]||t[d+2&3]||t[d+3&3])&&(n=t,h=d)}for(;p.data!==e;)if(i=p,!(p=p.next))return this;return(r=p.next)&&delete p.next,i?(r?i.next=r:delete i.next,this):t?(r?t[d]=r:delete t[d],(p=t[0]||t[1]||t[2]||t[3])&&p===(t[3]||t[2]||t[1]||t[0])&&!p.length&&(n?n[h]=p:this._root=p),this):(this._root=r,this)},pu.removeAll=function(e){for(var t=0,n=e.length;t1?(null==n?s.remove(e):s.set(e,p(n)),t):s.get(e)},find:function(t,n,i){var r,o,a,s,l,c=0,u=e.length;for(null==i?i=1/0:i*=i,c=0;c1?(c.on(e,n),t):c.on(e)}}}function ku(){var e,t,n,i,r=ru(-30),o=1,a=1/0,s=.81;function l(i){var r,o=e.length,a=uu(e,bu,wu).visitAfter(u);for(n=i,r=0;r=a)){(e.data!==t||e.next)&&(0===u&&(p+=(u=ou())*u),0===d&&(p+=(d=ou())*d),p1?i[0]+i.slice(2):i,+e.slice(n+1)]}function Ou(e){return(e=Mu(Math.abs(e)))?e[1]:NaN}function Eu(e,t){var n=Mu(e,t);if(!n)return e+"";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")}var Pu={"":function(e,t){e:for(var n,i=(e=e.toPrecision(t)).length,r=1,o=-1;r0&&(o=0)}return o>0?e.slice(0,o)+e.slice(n+1):e},"%":function(e,t){return(100*e).toFixed(t)},b:function(e){return Math.round(e).toString(2)},c:function(e){return e+""},d:function(e){return Math.round(e).toString(10)},e:function(e,t){return e.toExponential(t)},f:function(e,t){return e.toFixed(t)},g:function(e,t){return e.toPrecision(t)},o:function(e){return Math.round(e).toString(8)},p:function(e,t){return Eu(100*e,t)},r:Eu,s:function(e,t){var n=Mu(e,t);if(!n)return e+"";var i=n[0],r=n[1],o=r-(Su=3*Math.max(-8,Math.min(8,Math.floor(r/3))))+1,a=i.length;return o===a?i:o>a?i+new Array(o-a+1).join("0"):o>0?i.slice(0,o)+"."+i.slice(o):"0."+new Array(1-o).join("0")+Mu(e,Math.max(0,t+o-1))[0]},X:function(e){return Math.round(e).toString(16).toUpperCase()},x:function(e){return Math.round(e).toString(16)}},Iu=/^(?:(.)?([<>=^]))?([+\-\( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?([a-z%])?$/i;function qu(e){return new Nu(e)}function Nu(e){if(!(t=Iu.exec(e)))throw new Error("invalid format: "+e);var t,n=t[1]||" ",i=t[2]||">",r=t[3]||"-",o=t[4]||"",a=!!t[5],s=t[6]&&+t[6],l=!!t[7],c=t[8]&&+t[8].slice(1),u=t[9]||"";"n"===u?(l=!0,u="g"):Pu[u]||(u=""),(a||"0"===n&&"="===i)&&(a=!0,n="0",i="="),this.fill=n,this.align=i,this.sign=r,this.symbol=o,this.zero=a,this.width=s,this.comma=l,this.precision=c,this.type=u}function Du(e){return e}qu.prototype=Nu.prototype,Nu.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(null==this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(null==this.precision?"":"."+Math.max(0,0|this.precision))+this.type};var Ru,Lu,Fu,Bu=["y","z","a","f","p","n","\xb5","m","","k","M","G","T","P","E","Z","Y"];function ju(e){var t,n,i=e.grouping&&e.thousands?(t=e.grouping,n=e.thousands,function(e,i){for(var r=e.length,o=[],a=0,s=t[0],l=0;r>0&&s>0&&(l+s+1>i&&(s=Math.max(1,i-l)),o.push(e.substring(r-=s,r+s)),!((l+=s+1)>i));)s=t[a=(a+1)%t.length];return o.reverse().join(n)}):Du,r=e.currency,o=e.decimal,a=e.numerals?function(e){return function(t){return t.replace(/[0-9]/g,function(t){return e[+t]})}}(e.numerals):Du,s=e.percent||"%";function l(e){var t=(e=qu(e)).fill,n=e.align,l=e.sign,c=e.symbol,u=e.zero,d=e.width,h=e.comma,p=e.precision,f=e.type,m="$"===c?r[0]:"#"===c&&/[boxX]/.test(f)?"0"+f.toLowerCase():"",g="$"===c?r[1]:/[%p]/.test(f)?s:"",v=Pu[f],y=!f||/[defgprs%]/.test(f);function _(e){var r,s,c,_=m,b=g;if("c"===f)b=v(e)+b,e="";else{var w=(e=+e)<0;if(e=v(Math.abs(e),p),w&&0==+e&&(w=!1),_=(w?"("===l?l:"-":"-"===l||"("===l?"":l)+_,b=("s"===f?Bu[8+Su/3]:"")+b+(w&&"("===l?")":""),y)for(r=-1,s=e.length;++r(c=e.charCodeAt(r))||c>57){b=(46===c?o+e.slice(r+1):e.slice(r))+b,e=e.slice(0,r);break}}h&&!u&&(e=i(e,1/0));var S=_.length+e.length+b.length,x=S>1)+_+e+b+x.slice(S);break;default:e=x+_+e+b}return a(e)}return p=null==p?f?6:12:/[gprs]/.test(f)?Math.max(1,Math.min(21,p)):Math.max(0,Math.min(20,p)),_.toString=function(){return e+""},_}return{format:l,formatPrefix:function(e,t){var n=l(((e=qu(e)).type="f",e)),i=3*Math.max(-8,Math.min(8,Math.floor(Ou(t)/3))),r=Math.pow(10,-i),o=Bu[8+i/3];return function(e){return n(r*e)+o}}}}function zu(e){return Ru=ju(e),Lu=Ru.format,Fu=Ru.formatPrefix,Ru}function Uu(e){return Math.max(0,-Ou(Math.abs(e)))}function Hu(e,t){return Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(Ou(t)/3)))-Ou(Math.abs(e)))}function Yu(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,Ou(t)-Ou(e))+1}function Ju(){return new Gu}function Gu(){this.reset()}zu({decimal:".",thousands:",",grouping:[3],currency:["$",""]}),Gu.prototype={constructor:Gu,reset:function(){this.s=this.t=0},add:function(e){Vu(Wu,e,this.t),Vu(this,Wu.s,this.s),this.s?this.t+=Wu.t:this.s=Wu.t},valueOf:function(){return this.s}};var Wu=new Gu;function Vu(e,t,n){var i=e.s=t+n,r=i-t;e.t=t-(i-r)+(n-r)}var Qu=1e-6,Xu=Math.PI,Ku=Xu/2,$u=Xu/4,ed=2*Xu,td=180/Xu,nd=Xu/180,id=Math.abs,rd=Math.atan,od=Math.atan2,ad=Math.cos,sd=Math.ceil,ld=Math.exp,cd=(Math,Math.log),ud=Math.pow,dd=Math.sin,hd=Math.sign||function(e){return e>0?1:e<0?-1:0},pd=Math.sqrt,fd=Math.tan;function md(e){return e>1?0:e<-1?Xu:Math.acos(e)}function gd(e){return e>1?Ku:e<-1?-Ku:Math.asin(e)}function vd(e){return(e=dd(e/2))*e}function yd(){}function _d(e,t){e&&wd.hasOwnProperty(e.type)&&wd[e.type](e,t)}var bd={Feature:function(e,t){_d(e.geometry,t)},FeatureCollection:function(e,t){for(var n=e.features,i=-1,r=n.length;++i=0?1:-1,r=i*n,o=ad(t=(t*=nd)/2+$u),a=dd(t),s=Md*a,l=Zd*o+s*ad(r),c=s*i*dd(r);Od.add(od(c,l)),Ad=e,Zd=o,Md=a}function Rd(e){return Ed.reset(),Cd(e,Pd),2*Ed}function Ld(e){return[od(e[1],e[0]),gd(e[2])]}function Fd(e){var t=e[0],n=e[1],i=ad(n);return[i*ad(t),i*dd(t),dd(n)]}function Bd(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function jd(e,t){return[e[1]*t[2]-e[2]*t[1],e[2]*t[0]-e[0]*t[2],e[0]*t[1]-e[1]*t[0]]}function zd(e,t){e[0]+=t[0],e[1]+=t[1],e[2]+=t[2]}function Ud(e,t){return[e[0]*t,e[1]*t,e[2]*t]}function Hd(e){var t=pd(e[0]*e[0]+e[1]*e[1]+e[2]*e[2]);e[0]/=t,e[1]/=t,e[2]/=t}var Yd,Jd,Gd,Wd,Vd,Qd,Xd,Kd,$d,eh,th,nh,ih,rh,oh,ah,sh,lh,ch,uh,dh,hh,ph,fh,mh,gh,vh=Ju(),yh={point:_h,lineStart:wh,lineEnd:Sh,polygonStart:function(){yh.point=xh,yh.lineStart=Ch,yh.lineEnd=kh,vh.reset(),Pd.polygonStart()},polygonEnd:function(){Pd.polygonEnd(),yh.point=_h,yh.lineStart=wh,yh.lineEnd=Sh,Od<0?(Yd=-(Gd=180),Jd=-(Wd=90)):vh>Qu?Wd=90:vh<-1e-6&&(Jd=-90),eh[0]=Yd,eh[1]=Gd}};function _h(e,t){$d.push(eh=[Yd=e,Gd=e]),tWd&&(Wd=t)}function bh(e,t){var n=Fd([e*nd,t*nd]);if(Kd){var i=jd(Kd,n),r=jd([i[1],-i[0],0],i);Hd(r),r=Ld(r);var o,a=e-Vd,s=a>0?1:-1,l=r[0]*td*s,c=id(a)>180;c^(s*VdWd&&(Wd=o):c^(s*Vd<(l=(l+360)%360-180)&&lWd&&(Wd=t)),c?eTh(Yd,Gd)&&(Gd=e):Th(e,Gd)>Th(Yd,Gd)&&(Yd=e):Gd>=Yd?(eGd&&(Gd=e)):e>Vd?Th(Yd,e)>Th(Yd,Gd)&&(Gd=e):Th(e,Gd)>Th(Yd,Gd)&&(Yd=e)}else $d.push(eh=[Yd=e,Gd=e]);tWd&&(Wd=t),Kd=n,Vd=e}function wh(){yh.point=bh}function Sh(){eh[0]=Yd,eh[1]=Gd,yh.point=_h,Kd=null}function xh(e,t){if(Kd){var n=e-Vd;vh.add(id(n)>180?n+(n>0?360:-360):n)}else Qd=e,Xd=t;Pd.point(e,t),bh(e,t)}function Ch(){Pd.lineStart()}function kh(){xh(Qd,Xd),Pd.lineEnd(),id(vh)>Qu&&(Yd=-(Gd=180)),eh[0]=Yd,eh[1]=Gd,Kd=null}function Th(e,t){return(t-=e)<0?t+360:t}function Ah(e,t){return e[0]-t[0]}function Zh(e,t){return e[0]<=e[1]?e[0]<=t&&t<=e[1]:tTh(i[0],i[1])&&(i[1]=r[1]),Th(r[0],i[1])>Th(i[0],i[1])&&(i[0]=r[0])):o.push(i=r);for(a=-1/0,t=0,i=o[n=o.length-1];t<=n;i=r,++t)(s=Th(i[1],(r=o[t])[0]))>a&&(a=s,Yd=r[0],Gd=i[1])}return $d=eh=null,Yd===1/0||Jd===1/0?[[NaN,NaN],[NaN,NaN]]:[[Yd,Jd],[Gd,Wd]]}var Oh={sphere:yd,point:Eh,lineStart:Ih,lineEnd:Dh,polygonStart:function(){Oh.lineStart=Rh,Oh.lineEnd=Lh},polygonEnd:function(){Oh.lineStart=Ih,Oh.lineEnd=Dh}};function Eh(e,t){e*=nd;var n=ad(t*=nd);Ph(n*ad(e),n*dd(e),dd(t))}function Ph(e,t,n){++th,ih+=(e-ih)/th,rh+=(t-rh)/th,oh+=(n-oh)/th}function Ih(){Oh.point=qh}function qh(e,t){e*=nd;var n=ad(t*=nd);fh=n*ad(e),mh=n*dd(e),gh=dd(t),Oh.point=Nh,Ph(fh,mh,gh)}function Nh(e,t){e*=nd;var n=ad(t*=nd),i=n*ad(e),r=n*dd(e),o=dd(t),a=od(pd((a=mh*o-gh*r)*a+(a=gh*i-fh*o)*a+(a=fh*r-mh*i)*a),fh*i+mh*r+gh*o);nh+=a,ah+=a*(fh+(fh=i)),sh+=a*(mh+(mh=r)),lh+=a*(gh+(gh=o)),Ph(fh,mh,gh)}function Dh(){Oh.point=Eh}function Rh(){Oh.point=Fh}function Lh(){Bh(hh,ph),Oh.point=Eh}function Fh(e,t){hh=e,ph=t,e*=nd,t*=nd,Oh.point=Bh;var n=ad(t);fh=n*ad(e),mh=n*dd(e),gh=dd(t),Ph(fh,mh,gh)}function Bh(e,t){e*=nd;var n=ad(t*=nd),i=n*ad(e),r=n*dd(e),o=dd(t),a=mh*o-gh*r,s=gh*i-fh*o,l=fh*r-mh*i,c=pd(a*a+s*s+l*l),u=gd(c),d=c&&-u/c;ch+=d*a,uh+=d*s,dh+=d*l,nh+=u,ah+=u*(fh+(fh=i)),sh+=u*(mh+(mh=r)),lh+=u*(gh+(gh=o)),Ph(fh,mh,gh)}function jh(e){th=nh=ih=rh=oh=ah=sh=lh=ch=uh=dh=0,Cd(e,Oh);var t=ch,n=uh,i=dh,r=t*t+n*n+i*i;return r<1e-12&&(t=ah,n=sh,i=lh,nhXu?e-ed:e<-Xu?e+ed:e,t]}function Yh(e,t,n){return(e%=ed)?t||n?Uh(Gh(e),Wh(t,n)):Gh(e):t||n?Wh(t,n):Hh}function Jh(e){return function(t,n){return[(t+=e)>Xu?t-ed:t<-Xu?t+ed:t,n]}}function Gh(e){var t=Jh(e);return t.invert=Jh(-e),t}function Wh(e,t){var n=ad(e),i=dd(e),r=ad(t),o=dd(t);function a(e,t){var a=ad(t),s=ad(e)*a,l=dd(e)*a,c=dd(t),u=c*n+s*i;return[od(l*r-u*o,s*n-c*i),gd(u*r+l*o)]}return a.invert=function(e,t){var a=ad(t),s=ad(e)*a,l=dd(e)*a,c=dd(t),u=c*r-l*o;return[od(l*r+c*o,s*n+u*i),gd(u*n-s*i)]},a}function Vh(e){function t(t){return(t=e(t[0]*nd,t[1]*nd))[0]*=td,t[1]*=td,t}return e=Yh(e[0]*nd,e[1]*nd,e.length>2?e[2]*nd:0),t.invert=function(t){return(t=e.invert(t[0]*nd,t[1]*nd))[0]*=td,t[1]*=td,t},t}function Qh(e,t,n,i,r,o){if(n){var a=ad(t),s=dd(t),l=i*n;null==r?(r=t+i*ed,o=t-l/2):(r=Xh(a,r),o=Xh(a,o),(i>0?ro)&&(r+=i*ed));for(var c,u=r;i>0?u>o:u1&&t.push(t.pop().concat(t.shift()))},result:function(){var n=t;return t=[],e=null,n}}}function ep(e,t){return id(e[0]-t[0])=0;--o)r.point((u=c[o])[0],u[1]);else i(h.x,h.p.x,-1,r);h=h.p}c=(h=h.o).z,p=!p}while(!h.v);r.lineEnd()}}}function ip(e){if(t=e.length){for(var t,n,i=0,r=e[0];++i=0?1:-1,k=C*x,T=k>Xu,A=m*w;if(rp.add(od(A*C*dd(k),g*S+A*ad(k))),a+=T?x+C*ed:x,T^p>=n^_>=n){var Z=jd(Fd(h),Fd(y));Hd(Z);var M=jd(o,Z);Hd(M);var O=(T^x>=0?-1:1)*gd(M[2]);(i>O||i===O&&(Z[0]||Z[1]))&&(s+=T^x>=0?1:-1)}}return(a<-1e-6||a0){for(d||(r.polygonStart(),d=!0),r.lineStart(),e=0;e1&&2&l&&h.push(h.pop().concat(h.shift())),a.push(h.filter(sp))}return h}}function sp(e){return e.length>1}function lp(e,t){return((e=e.x)[0]<0?e[1]-Ku-Qu:Ku-e[1])-((t=t.x)[0]<0?t[1]-Ku-Qu:Ku-t[1])}var cp=ap(function(){return!0},function(e){var t,n=NaN,i=NaN,r=NaN;return{lineStart:function(){e.lineStart(),t=1},point:function(o,a){var s=o>0?Xu:-Xu,l=id(o-n);id(l-Xu)0?Ku:-Ku),e.point(r,i),e.lineEnd(),e.lineStart(),e.point(s,i),e.point(o,i),t=0):r!==s&&l>=Xu&&(id(n-r)Qu?rd((dd(t)*(o=ad(i))*dd(n)-dd(i)*(r=ad(t))*dd(e))/(r*o*a)):(t+i)/2}(n,i,o,a),e.point(r,i),e.lineEnd(),e.lineStart(),e.point(s,i),t=0),e.point(n=o,i=a),r=s},lineEnd:function(){e.lineEnd(),n=i=NaN},clean:function(){return 2-t}}},function(e,t,n,i){var r;if(null==e)i.point(-Xu,r=n*Ku),i.point(0,r),i.point(Xu,r),i.point(Xu,0),i.point(Xu,-r),i.point(0,-r),i.point(-Xu,-r),i.point(-Xu,0),i.point(-Xu,r);else if(id(e[0]-t[0])>Qu){var o=e[0]0,r=id(t)>Qu;function o(e,n){return ad(e)*ad(n)>t}function a(e,n,i){var r=[1,0,0],o=jd(Fd(e),Fd(n)),a=Bd(o,o),s=o[0],l=a-s*s;if(!l)return!i&&e;var c=t*a/l,u=-t*s/l,d=jd(r,o),h=Ud(r,c);zd(h,Ud(o,u));var p=d,f=Bd(h,p),m=Bd(p,p),g=f*f-m*(Bd(h,h)-1);if(!(g<0)){var v=pd(g),y=Ud(p,(-f-v)/m);if(zd(y,h),y=Ld(y),!i)return y;var _,b=e[0],w=n[0],S=e[1],x=n[1];w0^y[1]<(id(y[0]-b)Xu^(b<=y[0]&&y[0]<=w)){var T=Ud(p,(-f+v)/m);return zd(T,h),[y,Ld(T)]}}}function s(t,n){var r=i?e:Xu-e,o=0;return t<-r?o|=1:t>r&&(o|=2),n<-r?o|=4:n>r&&(o|=8),o}return ap(o,function(e){var t,n,l,c,u;return{lineStart:function(){c=l=!1,u=1},point:function(d,h){var p,f=[d,h],m=o(d,h),g=i?m?0:s(d,h):m?s(d+(d<0?Xu:-Xu),h):0;if(!t&&(c=l=m)&&e.lineStart(),m!==l&&(!(p=a(t,f))||ep(t,p)||ep(f,p))&&(f[0]+=Qu,f[1]+=Qu,m=o(f[0],f[1])),m!==l)u=0,m?(e.lineStart(),p=a(f,t),e.point(p[0],p[1])):(p=a(t,f),e.point(p[0],p[1]),e.lineEnd()),t=p;else if(r&&t&&i^m){var v;g&n||!(v=a(f,t,!0))||(u=0,i?(e.lineStart(),e.point(v[0][0],v[0][1]),e.point(v[1][0],v[1][1]),e.lineEnd()):(e.point(v[1][0],v[1][1]),e.lineEnd(),e.lineStart(),e.point(v[0][0],v[0][1])))}!m||t&&ep(t,f)||e.point(f[0],f[1]),t=f,l=m,n=g},lineEnd:function(){l&&e.lineEnd(),t=null},clean:function(){return u|(c&&l)<<1}}},function(t,i,r,o){Qh(o,e,n,r,t,i)},i?[0,-e]:[-Xu,e-Xu])}var dp=1e9,hp=-dp;function pp(e,t,n,i){function r(r,o){return e<=r&&r<=n&&t<=o&&o<=i}function o(r,o,s,c){var u=0,d=0;if(null==r||(u=a(r,s))!==(d=a(o,s))||l(r,o)<0^s>0)do{c.point(0===u||3===u?e:n,u>1?i:t)}while((u=(u+s+4)%4)!==d);else c.point(o[0],o[1])}function a(i,r){return id(i[0]-e)0?0:3:id(i[0]-n)0?2:1:id(i[1]-t)0?1:0:r>0?3:2}function s(e,t){return l(e.x,t.x)}function l(e,t){var n=a(e,1),i=a(t,1);return n!==i?n-i:0===n?t[1]-e[1]:1===n?e[0]-t[0]:2===n?e[1]-t[1]:t[0]-e[0]}return function(a){var l,c,u,d,h,p,f,m,g,v,y,_=a,b=$h(),w={point:S,lineStart:function(){w.point=x,c&&c.push(u=[]),v=!0,g=!1,f=m=NaN},lineEnd:function(){l&&(x(d,h),p&&g&&b.rejoin(),l.push(b.result())),w.point=S,g&&_.lineEnd()},polygonStart:function(){_=b,l=[],c=[],y=!0},polygonEnd:function(){var t=function(){for(var t=0,n=0,r=c.length;ni&&(h-o)*(i-a)>(p-a)*(e-o)&&++t:p<=i&&(h-o)*(i-a)<(p-a)*(e-o)&&--t;return t}(),n=y&&t,r=(l=In(l)).length;(n||r)&&(a.polygonStart(),n&&(a.lineStart(),o(null,null,1,a),a.lineEnd()),r&&np(l,s,t,o,a),a.polygonEnd()),_=a,l=c=u=null}};function S(e,t){r(e,t)&&_.point(e,t)}function x(o,a){var s=r(o,a);if(c&&u.push([o,a]),v)d=o,h=a,p=s,v=!1,s&&(_.lineStart(),_.point(o,a));else if(s&&g)_.point(o,a);else{var l=[f=Math.max(hp,Math.min(dp,f)),m=Math.max(hp,Math.min(dp,m))],b=[o=Math.max(hp,Math.min(dp,o)),a=Math.max(hp,Math.min(dp,a))];!function(e,t,n,i,r,o){var a,s=e[0],l=e[1],c=0,u=1,d=t[0]-s,h=t[1]-l;if(a=n-s,d||!(a>0)){if(a/=d,d<0){if(a0){if(a>u)return;a>c&&(c=a)}if(a=r-s,d||!(a<0)){if(a/=d,d<0){if(a>u)return;a>c&&(c=a)}else if(d>0){if(a0)){if(a/=h,h<0){if(a0){if(a>u)return;a>c&&(c=a)}if(a=o-l,h||!(a<0)){if(a/=h,h<0){if(a>u)return;a>c&&(c=a)}else if(h>0){if(a0&&(e[0]=s+c*d,e[1]=l+c*h),u<1&&(t[0]=s+u*d,t[1]=l+u*h),!0}}}}}(l,b,e,t,n,i)?s&&(_.lineStart(),_.point(o,a),y=!1):(g||(_.lineStart(),_.point(l[0],l[1])),_.point(b[0],b[1]),s||_.lineEnd(),y=!1)}f=o,m=a,g=s}return w}}function fp(){var e,t,n,i=0,r=0,o=960,a=500;return n={stream:function(n){return e&&t===n?e:e=pp(i,r,o,a)(t=n)},extent:function(s){return arguments.length?(i=+s[0][0],r=+s[0][1],o=+s[1][0],a=+s[1][1],e=t=null,n):[[i,r],[o,a]]}}}var mp,gp,vp,yp=Ju(),_p={sphere:yd,point:yd,lineStart:function(){_p.point=wp,_p.lineEnd=bp},lineEnd:yd,polygonStart:yd,polygonEnd:yd};function bp(){_p.point=_p.lineEnd=yd}function wp(e,t){mp=e*=nd,gp=dd(t*=nd),vp=ad(t),_p.point=Sp}function Sp(e,t){e*=nd;var n=dd(t*=nd),i=ad(t),r=id(e-mp),o=ad(r),a=i*dd(r),s=vp*n-gp*i*o,l=gp*n+vp*i*o;yp.add(od(pd(a*a+s*s),l)),mp=e,gp=n,vp=i}function xp(e){return yp.reset(),Cd(e,_p),+yp}var Cp=[null,null],kp={type:"LineString",coordinates:Cp};function Tp(e,t){return Cp[0]=e,Cp[1]=t,xp(kp)}var Ap={Feature:function(e,t){return Mp(e.geometry,t)},FeatureCollection:function(e,t){for(var n=e.features,i=-1,r=n.length;++iQu}).map(l)).concat(yn(sd(o/p)*p,r,p).filter(function(e){return id(e%m)>Qu}).map(c))}return v.lines=function(){return y().map(function(e){return{type:"LineString",coordinates:e}})},v.outline=function(){return{type:"Polygon",coordinates:[u(i).concat(d(a).slice(1),u(n).reverse().slice(1),d(s).reverse().slice(1))]}},v.extent=function(e){return arguments.length?v.extentMajor(e).extentMinor(e):v.extentMinor()},v.extentMajor=function(e){return arguments.length?(s=+e[0][1],a=+e[1][1],(i=+e[0][0])>(n=+e[1][0])&&(e=i,i=n,n=e),s>a&&(e=s,s=a,a=e),v.precision(g)):[[i,s],[n,a]]},v.extentMinor=function(n){return arguments.length?(o=+n[0][1],r=+n[1][1],(t=+n[0][0])>(e=+n[1][0])&&(n=t,t=e,e=n),o>r&&(n=o,o=r,r=n),v.precision(g)):[[t,o],[e,r]]},v.step=function(e){return arguments.length?v.stepMajor(e).stepMinor(e):v.stepMinor()},v.stepMajor=function(e){return arguments.length?(f=+e[0],m=+e[1],v):[f,m]},v.stepMinor=function(e){return arguments.length?(h=+e[0],p=+e[1],v):[h,p]},v.precision=function(h){return arguments.length?(g=+h,l=Dp(o,r,90),c=Rp(t,e,g),u=Dp(s,a,90),d=Rp(i,n,g),v):g},v.extentMajor([[-180,-89.999999],[180,89.999999]]).extentMinor([[-180,-80.000001],[180,80.000001]])}function Fp(){return Lp()()}function Bp(e,t){var n=e[0]*nd,i=e[1]*nd,r=t[0]*nd,o=t[1]*nd,a=ad(i),s=dd(i),l=ad(o),c=dd(o),u=a*ad(n),d=a*dd(n),h=l*ad(r),p=l*dd(r),f=2*gd(pd(vd(o-i)+a*l*vd(r-n))),m=dd(f),g=f?function(e){var t=dd(e*=f)/m,n=dd(f-e)/m,i=n*u+t*h,r=n*d+t*p,o=n*s+t*c;return[od(r,i)*td,od(o,pd(i*i+r*r))*td]}:function(){return[n*td,i*td]};return g.distance=f,g}function jp(e){return e}var zp,Up,Hp,Yp,Jp=Ju(),Gp=Ju(),Wp={point:yd,lineStart:yd,lineEnd:yd,polygonStart:function(){Wp.lineStart=Vp,Wp.lineEnd=Kp},polygonEnd:function(){Wp.lineStart=Wp.lineEnd=Wp.point=yd,Jp.add(id(Gp)),Gp.reset()},result:function(){var e=Jp/2;return Jp.reset(),e}};function Vp(){Wp.point=Qp}function Qp(e,t){Wp.point=Xp,zp=Hp=e,Up=Yp=t}function Xp(e,t){Gp.add(Yp*e-Hp*t),Hp=e,Yp=t}function Kp(){Xp(zp,Up)}var $p,ef,tf,nf,rf=Wp,of=1/0,af=of,sf=-of,lf=sf,cf={point:function(e,t){esf&&(sf=e),tlf&&(lf=t)},lineStart:yd,lineEnd:yd,polygonStart:yd,polygonEnd:yd,result:function(){var e=[[of,af],[sf,lf]];return sf=lf=-(af=of=1/0),e}},uf=0,df=0,hf=0,pf=0,ff=0,mf=0,gf=0,vf=0,yf=0,_f={point:bf,lineStart:wf,lineEnd:Cf,polygonStart:function(){_f.lineStart=kf,_f.lineEnd=Tf},polygonEnd:function(){_f.point=bf,_f.lineStart=wf,_f.lineEnd=Cf},result:function(){var e=yf?[gf/yf,vf/yf]:mf?[pf/mf,ff/mf]:hf?[uf/hf,df/hf]:[NaN,NaN];return uf=df=hf=pf=ff=mf=gf=vf=yf=0,e}};function bf(e,t){uf+=e,df+=t,++hf}function wf(){_f.point=Sf}function Sf(e,t){_f.point=xf,bf(tf=e,nf=t)}function xf(e,t){var n=e-tf,i=t-nf,r=pd(n*n+i*i);pf+=r*(tf+e)/2,ff+=r*(nf+t)/2,mf+=r,bf(tf=e,nf=t)}function Cf(){_f.point=bf}function kf(){_f.point=Af}function Tf(){Zf($p,ef)}function Af(e,t){_f.point=Zf,bf($p=tf=e,ef=nf=t)}function Zf(e,t){var n=e-tf,i=t-nf,r=pd(n*n+i*i);pf+=r*(tf+e)/2,ff+=r*(nf+t)/2,mf+=r,gf+=(r=nf*e-tf*t)*(tf+e),vf+=r*(nf+t),yf+=3*r,bf(tf=e,nf=t)}var Mf=_f;function Of(e){this._context=e}Of.prototype={_radius:4.5,pointRadius:function(e){return this._radius=e,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._context.closePath(),this._point=NaN},point:function(e,t){switch(this._point){case 0:this._context.moveTo(e,t),this._point=1;break;case 1:this._context.lineTo(e,t);break;default:this._context.moveTo(e+this._radius,t),this._context.arc(e,t,this._radius,0,ed)}},result:yd};var Ef,Pf,If,qf,Nf,Df=Ju(),Rf={point:yd,lineStart:function(){Rf.point=Lf},lineEnd:function(){Ef&&Ff(Pf,If),Rf.point=yd},polygonStart:function(){Ef=!0},polygonEnd:function(){Ef=null},result:function(){var e=+Df;return Df.reset(),e}};function Lf(e,t){Rf.point=Ff,Pf=qf=e,If=Nf=t}function Ff(e,t){Df.add(pd((qf-=e)*qf+(Nf-=t)*Nf)),qf=e,Nf=t}var Bf=Rf;function jf(){this._string=[]}function zf(e){return"m0,"+e+"a"+e+","+e+" 0 1,1 0,"+-2*e+"a"+e+","+e+" 0 1,1 0,"+2*e+"z"}function Uf(e,t){var n,i,r=4.5;function o(e){return e&&("function"==typeof r&&i.pointRadius(+r.apply(this,arguments)),Cd(e,n(i))),i.result()}return o.area=function(e){return Cd(e,n(rf)),rf.result()},o.measure=function(e){return Cd(e,n(Bf)),Bf.result()},o.bounds=function(e){return Cd(e,n(cf)),cf.result()},o.centroid=function(e){return Cd(e,n(Mf)),Mf.result()},o.projection=function(t){return arguments.length?(n=null==t?(e=null,jp):(e=t).stream,o):e},o.context=function(e){return arguments.length?(i=null==e?(t=null,new jf):new Of(t=e),"function"!=typeof r&&i.pointRadius(r),o):t},o.pointRadius=function(e){return arguments.length?(r="function"==typeof e?e:(i.pointRadius(+e),+e),o):r},o.projection(e).context(t)}function Hf(e){return{stream:Yf(e)}}function Yf(e){return function(t){var n=new Jf;for(var i in e)n[i]=e[i];return n.stream=t,n}}function Jf(){}function Gf(e,t,n){var i=e.clipExtent&&e.clipExtent();return e.scale(150).translate([0,0]),null!=i&&e.clipExtent(null),Cd(n,e.stream(cf)),t(cf.result()),null!=i&&e.clipExtent(i),e}function Wf(e,t,n){return Gf(e,function(n){var i=t[1][0]-t[0][0],r=t[1][1]-t[0][1],o=Math.min(i/(n[1][0]-n[0][0]),r/(n[1][1]-n[0][1])),a=+t[0][0]+(i-o*(n[1][0]+n[0][0]))/2,s=+t[0][1]+(r-o*(n[1][1]+n[0][1]))/2;e.scale(150*o).translate([a,s])},n)}function Vf(e,t,n){return Wf(e,[[0,0],t],n)}function Qf(e,t,n){return Gf(e,function(n){var i=+t,r=i/(n[1][0]-n[0][0]),o=(i-r*(n[1][0]+n[0][0]))/2,a=-r*n[0][1];e.scale(150*r).translate([o,a])},n)}function Xf(e,t,n){return Gf(e,function(n){var i=+t,r=i/(n[1][1]-n[0][1]),o=-r*n[0][0],a=(i-r*(n[1][1]+n[0][1]))/2;e.scale(150*r).translate([o,a])},n)}jf.prototype={_radius:4.5,_circle:zf(4.5),pointRadius:function(e){return(e=+e)!==this._radius&&(this._radius=e,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._string.push("Z"),this._point=NaN},point:function(e,t){switch(this._point){case 0:this._string.push("M",e,",",t),this._point=1;break;case 1:this._string.push("L",e,",",t);break;default:null==this._circle&&(this._circle=zf(this._radius)),this._string.push("M",e,",",t,this._circle)}},result:function(){if(this._string.length){var e=this._string.join("");return this._string=[],e}return null}},Jf.prototype={constructor:Jf,point:function(e,t){this.stream.point(e,t)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};var Kf=ad(30*nd);function $f(e,t){return+t?function(e,t){function n(i,r,o,a,s,l,c,u,d,h,p,f,m,g){var v=c-i,y=u-r,_=v*v+y*y;if(_>4*t&&m--){var b=a+h,w=s+p,S=l+f,x=pd(b*b+w*w+S*S),C=gd(S/=x),k=id(id(S)-1)t||id((v*M+y*O)/_-.5)>.3||a*h+s*p+l*f2?e[2]%360*nd:0,A()):[g*td,v*td,y*td]},k.angle=function(e){return arguments.length?(_=e%360*nd,A()):_*td},k.precision=function(e){return arguments.length?(a=$f(s,C=e*e),Z()):pd(C)},k.fitExtent=function(e,t){return Wf(k,e,t)},k.fitSize=function(e,t){return Vf(k,e,t)},k.fitWidth=function(e,t){return Qf(k,e,t)},k.fitHeight=function(e,t){return Xf(k,e,t)},function(){return t=e.apply(this,arguments),k.invert=t.invert&&T,A()}}function om(e){var t=0,n=Xu/3,i=rm(e),r=i(t,n);return r.parallels=function(e){return arguments.length?i(t=e[0]*nd,n=e[1]*nd):[t*td,n*td]},r}function am(e,t){var n=dd(e),i=(n+dd(t))/2;if(id(i)=.12&&r<.234&&i>=-.425&&i<-.214?s:r>=.166&&r<.234&&i>=-.214&&i<-.115?l:a).invert(e)},u.stream=function(n){return e&&t===n?e:(i=[a.stream(t=n),s.stream(n),l.stream(n)],r=i.length,e={point:function(e,t){for(var n=-1;++n0?t<-Ku+Qu&&(t=-Ku+Qu):t>Ku-Qu&&(t=Ku-Qu);var n=r/ud(_m(t),i);return[n*dd(i*e),r-n*ad(i*e)]}return o.invert=function(e,t){var n=r-t,o=hd(i)*pd(e*e+n*n);return[od(e,id(n))/i*hd(n),2*rd(ud(r/o,1/i))-Ku]},o}function wm(){return om(bm).scale(109.5).parallels([30,30])}function Sm(e,t){return[e,t]}function xm(){return im(Sm).scale(152.63)}function Cm(e,t){var n=ad(e),i=e===t?dd(e):(n-ad(t))/(t-e),r=n/i+e;if(id(i)2?e[2]+90:90]):[(e=n())[0],e[1],e[2]-90]},n([0,0,90]).scale(159.155)}function Lm(e,t){return e.parent===t.parent?1:2}function Fm(e,t){return e+t.x}function Bm(e,t){return Math.max(e,t.y)}function jm(){var e=Lm,t=1,n=1,i=!1;function r(r){var o,a=0;r.eachAfter(function(t){var n=t.children;n?(t.x=function(e){return e.reduce(Fm,0)/e.length}(n),t.y=function(e){return 1+e.reduce(Bm,0)}(n)):(t.x=o?a+=e(t,o):0,t.y=0,o=t)});var s=function(e){for(var t;t=e.children;)e=t[0];return e}(r),l=function(e){for(var t;t=e.children;)e=t[t.length-1];return e}(r),c=s.x-e(s,l)/2,u=l.x+e(l,s)/2;return r.eachAfter(i?function(e){e.x=(e.x-r.x)*t,e.y=(r.y-e.y)*n}:function(e){e.x=(e.x-c)/(u-c)*t,e.y=(1-(r.y?e.y/r.y:1))*n})}return r.separation=function(t){return arguments.length?(e=t,r):e},r.size=function(e){return arguments.length?(i=!1,t=+e[0],n=+e[1],r):i?null:[t,n]},r.nodeSize=function(e){return arguments.length?(i=!0,t=+e[0],n=+e[1],r):i?[t,n]:null},r}function zm(e){var t=0,n=e.children,i=n&&n.length;if(i)for(;--i>=0;)t+=n[i].value;else t=1;e.value=t}function Um(e,t){var n,i,r,o,a,s=new Gm(e),l=+e.value&&(s.value=e.value),c=[s];for(null==t&&(t=Hm);n=c.pop();)if(l&&(n.value=+n.data.value),(r=t(n.data))&&(a=r.length))for(n.children=new Array(a),o=a-1;o>=0;--o)c.push(i=n.children[o]=new Gm(r[o])),i.parent=n,i.depth=n.depth+1;return s.eachBefore(Jm)}function Hm(e){return e.children}function Ym(e){e.data=e.data.data}function Jm(e){var t=0;do{e.height=t}while((e=e.parent)&&e.height<++t)}function Gm(e){this.data=e,this.depth=this.height=0,this.parent=null}fm.invert=dm(function(e){return e}),gm.invert=function(e,t){return[e,2*rd(ld(t))-Ku]},Sm.invert=Sm,Tm.invert=dm(rd),Om.invert=function(e,t){var n,i=t,r=25;do{var o=i*i,a=o*o;i-=n=(i*(1.007226+o*(.015085+a*(.028874*o-.044475-.005916*a)))-t)/(1.007226+o*(.045255+a*(.259866*o-.311325-.005916*11*a)))}while(id(n)>Qu&&--r>0);return[e/(.8707+(o=i*i)*(o*(o*o*o*(.003971-.001529*o)-.013791)-.131979)),i]},Pm.invert=dm(gd),qm.invert=dm(function(e){return 2*rd(e)}),Dm.invert=function(e,t){return[-t,2*rd(ld(e))-Ku]},Gm.prototype=Um.prototype={constructor:Gm,count:function(){return this.eachAfter(zm)},each:function(e){var t,n,i,r,o=this,a=[o];do{for(t=a.reverse(),a=[];o=t.pop();)if(e(o),n=o.children)for(i=0,r=n.length;i=0;--n)r.push(t[n]);return this},sum:function(e){return this.eachAfter(function(t){for(var n=+e(t.data)||0,i=t.children,r=i&&i.length;--r>=0;)n+=i[r].value;t.value=n})},sort:function(e){return this.eachBefore(function(t){t.children&&t.children.sort(e)})},path:function(e){for(var t=this,n=function(e,t){if(e===t)return e;var n=e.ancestors(),i=t.ancestors(),r=null;for(e=n.pop(),t=i.pop();e===t;)r=e,e=n.pop(),t=i.pop();return r}(t,e),i=[t];t!==n;)i.push(t=t.parent);for(var r=i.length;e!==n;)i.splice(r,0,e),e=e.parent;return i},ancestors:function(){for(var e=this,t=[e];e=e.parent;)t.push(e);return t},descendants:function(){var e=[];return this.each(function(t){e.push(t)}),e},leaves:function(){var e=[];return this.eachBefore(function(t){t.children||e.push(t)}),e},links:function(){var e=this,t=[];return e.each(function(n){n!==e&&t.push({source:n.parent,target:n})}),t},copy:function(){return Um(this).eachBefore(Ym)}};var Wm=Array.prototype.slice;function Vm(e){for(var t,n,i=0,r=(e=function(e){for(var t,n,i=e.length;i;)n=Math.random()*i--|0,t=e[i],e[i]=e[n],e[n]=t;return e}(Wm.call(e))).length,o=[];i0&&n*n>i*i+r*r}function $m(e,t){for(var n=0;n(a*=a)?(i=(c+a-r)/(2*c),o=Math.sqrt(Math.max(0,a/c-i*i)),n.x=e.x-i*s-o*l,n.y=e.y-i*l+o*s):(i=(c+r-a)/(2*c),o=Math.sqrt(Math.max(0,r/c-i*i)),n.x=t.x+i*s-o*l,n.y=t.y+i*l+o*s)):(n.x=t.x+n.r,n.y=t.y)}function rg(e,t){var n=e.r+t.r-1e-6,i=t.x-e.x,r=t.y-e.y;return n>0&&n*n>i*i+r*r}function og(e){var t=e._,n=e.next._,i=t.r+n.r,r=(t.x*n.r+n.x*t.r)/i,o=(t.y*n.r+n.y*t.r)/i;return r*r+o*o}function ag(e){this._=e,this.next=null,this.previous=null}function sg(e){if(!(r=e.length))return 0;var t,n,i,r,o,a,s,l,c,u,d;if((t=e[0]).x=0,t.y=0,!(r>1))return t.r;if(t.x=-(n=e[1]).r,n.x=t.r,n.y=0,!(r>2))return t.r+n.r;ig(n,t,i=e[2]),t=new ag(t),n=new ag(n),i=new ag(i),t.next=i.previous=n,n.next=t.previous=i,i.next=n.previous=t;e:for(s=3;s0)throw new Error("cycle");return o}return n.id=function(t){return arguments.length?(e=ug(t),n):e},n.parentId=function(e){return arguments.length?(t=ug(e),n):t},n}function Tg(e,t){return e.parent===t.parent?1:2}function Ag(e){var t=e.children;return t?t[0]:e.t}function Zg(e){var t=e.children;return t?t[t.length-1]:e.t}function Mg(e,t,n){var i=n/(t.i-e.i);t.c-=i,t.s+=n,e.c+=i,t.z+=n,t.m+=n}function Og(e,t,n){return e.a.parent===t.parent?e.a:n}function Eg(e,t){this._=e,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=t}function Pg(){var e=Tg,t=1,n=1,i=null;function r(r){var l=function(e){for(var t,n,i,r,o,a=new Eg(e,0),s=[a];t=s.pop();)if(i=t._.children)for(t.children=new Array(o=i.length),r=o-1;r>=0;--r)s.push(n=t.children[r]=new Eg(i[r],r)),n.parent=t;return(a.parent=new Eg(null,0)).children=[a],a}(r);if(l.eachAfter(o),l.parent.m=-l.z,l.eachBefore(a),i)r.eachBefore(s);else{var c=r,u=r,d=r;r.eachBefore(function(e){e.xu.x&&(u=e),e.depth>d.depth&&(d=e)});var h=c===u?1:e(c,u)/2,p=h-c.x,f=t/(u.x+h+p),m=n/(d.depth||1);r.eachBefore(function(e){e.x=(e.x+p)*f,e.y=e.depth*m})}return r}function o(t){var n=t.children,i=t.parent.children,r=t.i?i[t.i-1]:null;if(n){!function(e){for(var t,n=0,i=0,r=e.children,o=r.length;--o>=0;)(t=r[o]).z+=n,t.m+=n,n+=t.s+(i+=t.c)}(t);var o=(n[0].z+n[n.length-1].z)/2;r?(t.z=r.z+e(t._,r._),t.m=t.z-o):t.z=o}else r&&(t.z=r.z+e(t._,r._));t.parent.A=function(t,n,i){if(n){for(var r,o=t,a=t,s=n,l=o.parent.children[0],c=o.m,u=a.m,d=s.m,h=l.m;s=Zg(s),o=Ag(o),s&&o;)l=Ag(l),(a=Zg(a)).a=t,(r=s.z+d-o.z-c+e(s._,o._))>0&&(Mg(Og(s,t,i),t,r),c+=r,u+=r),d+=s.m,c+=o.m,h+=l.m,u+=a.m;s&&!Zg(a)&&(a.t=s,a.m+=d-u),o&&!Ag(l)&&(l.t=o,l.m+=c-h,i=t)}return i}(t,r,t.parent.A||i[0])}function a(e){e._.x=e.z+e.parent.m,e.m+=e.parent.m}function s(e){e.x*=t,e.y=e.depth*n}return r.separation=function(t){return arguments.length?(e=t,r):e},r.size=function(e){return arguments.length?(i=!1,t=+e[0],n=+e[1],r):i?null:[t,n]},r.nodeSize=function(e){return arguments.length?(i=!0,t=+e[0],n=+e[1],r):i?[t,n]:null},r}function Ig(e,t,n,i,r){for(var o,a=e.children,s=-1,l=a.length,c=e.value&&(r-n)/e.value;++sh&&(h=s),g=u*u*m,(p=Math.max(h/g,g/d))>f){u-=s;break}f=p}v.push(a={value:u,dice:l1?t:1)},n}(qg);function Rg(){var e=Dg,t=!1,n=1,i=1,r=[0],o=dg,a=dg,s=dg,l=dg,c=dg;function u(e){return e.x0=e.y0=0,e.x1=n,e.y1=i,e.eachBefore(d),r=[0],t&&e.eachBefore(yg),e}function d(t){var n=r[t.depth],i=t.x0+n,u=t.y0+n,d=t.x1-n,h=t.y1-n;d=n-1){var u=s[t];return u.x0=r,u.y0=o,u.x1=a,void(u.y1=l)}for(var d=c[t],h=i/2+d,p=t+1,f=n-1;p>>1;c[m]l-o){var y=(r*v+a*g)/i;e(t,p,g,r,o,y,l),e(p,n,v,y,o,a,l)}else{var _=(o*v+l*g)/i;e(t,p,g,r,o,a,_),e(p,n,v,r,_,a,l)}}(0,l,e.value,t,n,i,r)}function Fg(e,t,n,i,r){(1&e.depth?Ig:_g)(e,t,n,i,r)}var Bg=function e(t){function n(e,n,i,r,o){if((a=e._squarify)&&a.ratio===t)for(var a,s,l,c,u,d=-1,h=a.length,p=e.value;++d1?t:1)},n}(qg);function jg(e){for(var t,n=-1,i=e.length,r=e[i-1],o=0;++n1&&Ug(e[n[i-2]],e[n[i-1]],e[r])<=0;)--i;n[i++]=r}return n.slice(0,i)}function Jg(e){if((n=e.length)<3)return null;var t,n,i=new Array(n),r=new Array(n);for(t=0;t=0;--t)c.push(e[i[o[t]][2]]);for(t=+s;ts!=c>s&&a<(l-n)*(s-i)/(c-i)+n&&(u=!u),l=n,c=i;return u}function Wg(e){for(var t,n,i=-1,r=e.length,o=e[r-1],a=o[0],s=o[1],l=0;++i1);return e+n*o*Math.sqrt(-2*Math.log(r)/r)}}return n.source=e,n}(Vg),Kg=function e(t){function n(){var e=Xg.source(t).apply(this,arguments);return function(){return Math.exp(e())}}return n.source=e,n}(Vg),$g=function e(t){function n(e){return function(){for(var n=0,i=0;i2?mv:fv,i=r=null,u}function u(t){return(i||(i=n(o,a,l?function(e){return function(t,n){var i=e(t=+t,n=+n);return function(e){return e<=t?0:e>=n?1:i(e)}}}(e):e,s)))(+t)}return u.invert=function(e){return(r||(r=n(a,o,pv,l?function(e){return function(t,n){var i=e(t=+t,n=+n);return function(e){return e<=0?t:e>=1?n:i(e)}}}(t):t)))(+e)},u.domain=function(e){return arguments.length?(o=iv.call(e,dv),c()):o.slice()},u.range=function(e){return arguments.length?(a=rv.call(e),c()):a.slice()},u.rangeRound=function(e){return a=rv.call(e),s=oa,c()},u.clamp=function(e){return arguments.length?(l=!!e,c()):l},u.interpolate=function(e){return arguments.length?(s=e,c()):s},c()}function yv(e){var t=e.domain;return e.ticks=function(e){var n=t();return Sn(n[0],n[n.length-1],null==e?10:e)},e.tickFormat=function(e,n){return function(e,t,n){var i,r=e[0],o=e[e.length-1],a=Cn(r,o,null==t?10:t);switch((n=qu(null==n?",f":n)).type){case"s":var s=Math.max(Math.abs(r),Math.abs(o));return null!=n.precision||isNaN(i=Hu(a,s))||(n.precision=i),Fu(n,s);case"":case"e":case"g":case"p":case"r":null!=n.precision||isNaN(i=Yu(a,Math.max(Math.abs(r),Math.abs(o))))||(n.precision=i-("e"===n.type));break;case"f":case"%":null!=n.precision||isNaN(i=Uu(a))||(n.precision=i-2*("%"===n.type))}return Lu(n)}(t(),e,n)},e.nice=function(n){null==n&&(n=10);var i,r=t(),o=0,a=r.length-1,s=r[o],l=r[a];return l0?i=xn(s=Math.floor(s/i)*i,l=Math.ceil(l/i)*i,n):i<0&&(i=xn(s=Math.ceil(s*i)/i,l=Math.floor(l*i)/i,n)),i>0?(r[o]=Math.floor(s/i)*i,r[a]=Math.ceil(l/i)*i,t(r)):i<0&&(r[o]=Math.ceil(s*i)/i,r[a]=Math.floor(l*i)/i,t(r)),e},e}function _v(){var e=vv(pv,$o);return e.copy=function(){return gv(e,_v())},yv(e)}function bv(){var e=[0,1];function t(e){return+e}return t.invert=t,t.domain=t.range=function(n){return arguments.length?(e=iv.call(n,dv),t):e.slice()},t.copy=function(){return bv().domain(e)},yv(t)}function wv(e,t){var n,i=0,r=(e=e.slice()).length-1,o=e[i],a=e[r];return a0){for(;hl)break;m.push(d)}}else for(;h=1;--u)if(!((d=c*u)l)break;m.push(d)}}else m=Sn(h,p,Math.min(p-h,f)).map(r);return o?m.reverse():m},e.tickFormat=function(t,o){if(null==o&&(o=10===n?".0e":","),"function"!=typeof o&&(o=Lu(o)),t===1/0)return o;null==t&&(t=10);var a=Math.max(1,n*t/e.ticks().length);return function(e){var t=e/r(Math.round(i(e)));return t*n0?n[r-1]:e[0],r=n?[i[n-1],t]:[i[a-1],i[a]]},o.copy=function(){return Iv().domain([e,t]).range(r)},yv(o)}function qv(){var e=[.5],t=[0,1],n=1;function i(i){if(i<=i)return t[rn(e,i,0,n)]}return i.domain=function(r){return arguments.length?(e=rv.call(r),n=Math.min(e.length,t.length-1),i):e.slice()},i.range=function(r){return arguments.length?(t=rv.call(r),n=Math.min(e.length,t.length-1),i):t.slice()},i.invertExtent=function(n){var i=t.indexOf(n);return[e[i-1],e[i]]},i.copy=function(){return qv().domain(e).range(t)},i}var Nv=new Date,Dv=new Date;function Rv(e,t,n,i){function r(t){return e(t=new Date(+t)),t}return r.floor=r,r.ceil=function(n){return e(n=new Date(n-1)),t(n,1),e(n),n},r.round=function(e){var t=r(e),n=r.ceil(e);return e-t0))return s;do{s.push(a=new Date(+n)),t(n,o),e(n)}while(a=t)for(;e(t),!n(t);)t.setTime(t-1)},function(e,i){if(e>=e)if(i<0)for(;++i<=0;)for(;t(e,-1),!n(e););else for(;--i>=0;)for(;t(e,1),!n(e););})},n&&(r.count=function(t,i){return Nv.setTime(+t),Dv.setTime(+i),e(Nv),e(Dv),Math.floor(n(Nv,Dv))},r.every=function(e){return e=Math.floor(e),isFinite(e)&&e>0?e>1?r.filter(i?function(t){return i(t)%e==0}:function(t){return r.count(0,t)%e==0}):r:null}),r}var Lv=Rv(function(){},function(e,t){e.setTime(+e+t)},function(e,t){return t-e});Lv.every=function(e){return e=Math.floor(e),isFinite(e)&&e>0?e>1?Rv(function(t){t.setTime(Math.floor(t/e)*e)},function(t,n){t.setTime(+t+n*e)},function(t,n){return(n-t)/e}):Lv:null};var Fv=Lv,Bv=Lv.range,jv=1e3,zv=6e4,Uv=36e5,Hv=864e5,Yv=6048e5,Jv=Rv(function(e){e.setTime(e-e.getMilliseconds())},function(e,t){e.setTime(+e+t*jv)},function(e,t){return(t-e)/jv},function(e){return e.getUTCSeconds()}),Gv=Jv,Wv=Jv.range,Vv=Rv(function(e){e.setTime(e-e.getMilliseconds()-e.getSeconds()*jv)},function(e,t){e.setTime(+e+t*zv)},function(e,t){return(t-e)/zv},function(e){return e.getMinutes()}),Qv=Vv,Xv=Vv.range,Kv=Rv(function(e){e.setTime(e-e.getMilliseconds()-e.getSeconds()*jv-e.getMinutes()*zv)},function(e,t){e.setTime(+e+t*Uv)},function(e,t){return(t-e)/Uv},function(e){return e.getHours()}),$v=Kv,ey=Kv.range,ty=Rv(function(e){e.setHours(0,0,0,0)},function(e,t){e.setDate(e.getDate()+t)},function(e,t){return(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*zv)/Hv},function(e){return e.getDate()-1}),ny=ty,iy=ty.range;function ry(e){return Rv(function(t){t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},function(e,t){e.setDate(e.getDate()+7*t)},function(e,t){return(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*zv)/Yv})}var oy=ry(0),ay=ry(1),sy=ry(2),ly=ry(3),cy=ry(4),uy=ry(5),dy=ry(6),hy=oy.range,py=ay.range,fy=sy.range,my=ly.range,gy=cy.range,vy=uy.range,yy=dy.range,_y=Rv(function(e){e.setDate(1),e.setHours(0,0,0,0)},function(e,t){e.setMonth(e.getMonth()+t)},function(e,t){return t.getMonth()-e.getMonth()+12*(t.getFullYear()-e.getFullYear())},function(e){return e.getMonth()}),by=_y,wy=_y.range,Sy=Rv(function(e){e.setMonth(0,1),e.setHours(0,0,0,0)},function(e,t){e.setFullYear(e.getFullYear()+t)},function(e,t){return t.getFullYear()-e.getFullYear()},function(e){return e.getFullYear()});Sy.every=function(e){return isFinite(e=Math.floor(e))&&e>0?Rv(function(t){t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},function(t,n){t.setFullYear(t.getFullYear()+n*e)}):null};var xy=Sy,Cy=Sy.range,ky=Rv(function(e){e.setUTCSeconds(0,0)},function(e,t){e.setTime(+e+t*zv)},function(e,t){return(t-e)/zv},function(e){return e.getUTCMinutes()}),Ty=ky,Ay=ky.range,Zy=Rv(function(e){e.setUTCMinutes(0,0,0)},function(e,t){e.setTime(+e+t*Uv)},function(e,t){return(t-e)/Uv},function(e){return e.getUTCHours()}),My=Zy,Oy=Zy.range,Ey=Rv(function(e){e.setUTCHours(0,0,0,0)},function(e,t){e.setUTCDate(e.getUTCDate()+t)},function(e,t){return(t-e)/Hv},function(e){return e.getUTCDate()-1}),Py=Ey,Iy=Ey.range;function qy(e){return Rv(function(t){t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},function(e,t){e.setUTCDate(e.getUTCDate()+7*t)},function(e,t){return(t-e)/Yv})}var Ny=qy(0),Dy=qy(1),Ry=qy(2),Ly=qy(3),Fy=qy(4),By=qy(5),jy=qy(6),zy=Ny.range,Uy=Dy.range,Hy=Ry.range,Yy=Ly.range,Jy=Fy.range,Gy=By.range,Wy=jy.range,Vy=Rv(function(e){e.setUTCDate(1),e.setUTCHours(0,0,0,0)},function(e,t){e.setUTCMonth(e.getUTCMonth()+t)},function(e,t){return t.getUTCMonth()-e.getUTCMonth()+12*(t.getUTCFullYear()-e.getUTCFullYear())},function(e){return e.getUTCMonth()}),Qy=Vy,Xy=Vy.range,Ky=Rv(function(e){e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},function(e,t){e.setUTCFullYear(e.getUTCFullYear()+t)},function(e,t){return t.getUTCFullYear()-e.getUTCFullYear()},function(e){return e.getUTCFullYear()});Ky.every=function(e){return isFinite(e=Math.floor(e))&&e>0?Rv(function(t){t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},function(t,n){t.setUTCFullYear(t.getUTCFullYear()+n*e)}):null};var $y=Ky,e_=Ky.range;function t_(e){if(0<=e.y&&e.y<100){var t=new Date(-1,e.m,e.d,e.H,e.M,e.S,e.L);return t.setFullYear(e.y),t}return new Date(e.y,e.m,e.d,e.H,e.M,e.S,e.L)}function n_(e){if(0<=e.y&&e.y<100){var t=new Date(Date.UTC(-1,e.m,e.d,e.H,e.M,e.S,e.L));return t.setUTCFullYear(e.y),t}return new Date(Date.UTC(e.y,e.m,e.d,e.H,e.M,e.S,e.L))}function i_(e){return{y:e,m:0,d:1,H:0,M:0,S:0,L:0}}function r_(e){var t=e.dateTime,n=e.date,i=e.time,r=e.periods,o=e.days,a=e.shortDays,s=e.months,l=e.shortMonths,c=g_(r),u=v_(r),d=g_(o),h=v_(o),p=g_(a),f=v_(a),m=g_(s),g=v_(s),v=g_(l),y=v_(l),_={a:function(e){return a[e.getDay()]},A:function(e){return o[e.getDay()]},b:function(e){return l[e.getMonth()]},B:function(e){return s[e.getMonth()]},c:null,d:R_,e:R_,f:z_,H:L_,I:F_,j:B_,L:j_,m:U_,M:H_,p:function(e){return r[+(e.getHours()>=12)]},Q:yb,s:_b,S:Y_,u:J_,U:G_,V:W_,w:V_,W:Q_,x:null,X:null,y:X_,Y:K_,Z:$_,"%":vb},b={a:function(e){return a[e.getUTCDay()]},A:function(e){return o[e.getUTCDay()]},b:function(e){return l[e.getUTCMonth()]},B:function(e){return s[e.getUTCMonth()]},c:null,d:eb,e:eb,f:ob,H:tb,I:nb,j:ib,L:rb,m:ab,M:sb,p:function(e){return r[+(e.getUTCHours()>=12)]},Q:yb,s:_b,S:lb,u:cb,U:ub,V:db,w:hb,W:pb,x:null,X:null,y:fb,Y:mb,Z:gb,"%":vb},w={a:function(e,t,n){var i=p.exec(t.slice(n));return i?(e.w=f[i[0].toLowerCase()],n+i[0].length):-1},A:function(e,t,n){var i=d.exec(t.slice(n));return i?(e.w=h[i[0].toLowerCase()],n+i[0].length):-1},b:function(e,t,n){var i=v.exec(t.slice(n));return i?(e.m=y[i[0].toLowerCase()],n+i[0].length):-1},B:function(e,t,n){var i=m.exec(t.slice(n));return i?(e.m=g[i[0].toLowerCase()],n+i[0].length):-1},c:function(e,n,i){return C(e,t,n,i)},d:A_,e:A_,f:I_,H:M_,I:M_,j:Z_,L:P_,m:T_,M:O_,p:function(e,t,n){var i=c.exec(t.slice(n));return i?(e.p=u[i[0].toLowerCase()],n+i[0].length):-1},Q:N_,s:D_,S:E_,u:__,U:b_,V:w_,w:y_,W:S_,x:function(e,t,i){return C(e,n,t,i)},X:function(e,t,n){return C(e,i,t,n)},y:C_,Y:x_,Z:k_,"%":q_};function S(e,t){return function(n){var i,r,o,a=[],s=-1,l=0,c=e.length;for(n instanceof Date||(n=new Date(+n));++s53)return null;"w"in o||(o.w=1),"Z"in o?(r=(i=n_(i_(o.y))).getUTCDay(),i=r>4||0===r?Dy.ceil(i):Dy(i),i=Py.offset(i,7*(o.V-1)),o.y=i.getUTCFullYear(),o.m=i.getUTCMonth(),o.d=i.getUTCDate()+(o.w+6)%7):(r=(i=t(i_(o.y))).getDay(),i=r>4||0===r?ay.ceil(i):ay(i),i=ny.offset(i,7*(o.V-1)),o.y=i.getFullYear(),o.m=i.getMonth(),o.d=i.getDate()+(o.w+6)%7)}else("W"in o||"U"in o)&&("w"in o||(o.w="u"in o?o.u%7:"W"in o?1:0),r="Z"in o?n_(i_(o.y)).getUTCDay():t(i_(o.y)).getDay(),o.m=0,o.d="W"in o?(o.w+6)%7+7*o.W-(r+5)%7:o.w+7*o.U-(r+6)%7);return"Z"in o?(o.H+=o.Z/100|0,o.M+=o.Z%100,n_(o)):t(o)}}function C(e,t,n,i){for(var r,o,a=0,s=t.length,l=n.length;a=l)return-1;if(37===(r=t.charCodeAt(a++))){if(r=t.charAt(a++),!(o=w[r in u_?t.charAt(a++):r])||(i=o(e,n,i))<0)return-1}else if(r!=n.charCodeAt(i++))return-1}return i}return _.x=S(n,_),_.X=S(i,_),_.c=S(t,_),b.x=S(n,b),b.X=S(i,b),b.c=S(t,b),{format:function(e){var t=S(e+="",_);return t.toString=function(){return e},t},parse:function(e){var t=x(e+="",t_);return t.toString=function(){return e},t},utcFormat:function(e){var t=S(e+="",b);return t.toString=function(){return e},t},utcParse:function(e){var t=x(e,n_);return t.toString=function(){return e},t}}}var o_,a_,s_,l_,c_,u_={"-":"",_:" ",0:"0"},d_=/^\s*\d+/,h_=/^%/,p_=/[\\^$*+?|[\]().{}]/g;function f_(e,t,n){var i=e<0?"-":"",r=(i?-e:e)+"",o=r.length;return i+(o68?1900:2e3),n+i[0].length):-1}function k_(e,t,n){var i=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(n,n+6));return i?(e.Z=i[1]?0:-(i[2]+(i[3]||"00")),n+i[0].length):-1}function T_(e,t,n){var i=d_.exec(t.slice(n,n+2));return i?(e.m=i[0]-1,n+i[0].length):-1}function A_(e,t,n){var i=d_.exec(t.slice(n,n+2));return i?(e.d=+i[0],n+i[0].length):-1}function Z_(e,t,n){var i=d_.exec(t.slice(n,n+3));return i?(e.m=0,e.d=+i[0],n+i[0].length):-1}function M_(e,t,n){var i=d_.exec(t.slice(n,n+2));return i?(e.H=+i[0],n+i[0].length):-1}function O_(e,t,n){var i=d_.exec(t.slice(n,n+2));return i?(e.M=+i[0],n+i[0].length):-1}function E_(e,t,n){var i=d_.exec(t.slice(n,n+2));return i?(e.S=+i[0],n+i[0].length):-1}function P_(e,t,n){var i=d_.exec(t.slice(n,n+3));return i?(e.L=+i[0],n+i[0].length):-1}function I_(e,t,n){var i=d_.exec(t.slice(n,n+6));return i?(e.L=Math.floor(i[0]/1e3),n+i[0].length):-1}function q_(e,t,n){var i=h_.exec(t.slice(n,n+1));return i?n+i[0].length:-1}function N_(e,t,n){var i=d_.exec(t.slice(n));return i?(e.Q=+i[0],n+i[0].length):-1}function D_(e,t,n){var i=d_.exec(t.slice(n));return i?(e.Q=1e3*+i[0],n+i[0].length):-1}function R_(e,t){return f_(e.getDate(),t,2)}function L_(e,t){return f_(e.getHours(),t,2)}function F_(e,t){return f_(e.getHours()%12||12,t,2)}function B_(e,t){return f_(1+ny.count(xy(e),e),t,3)}function j_(e,t){return f_(e.getMilliseconds(),t,3)}function z_(e,t){return j_(e,t)+"000"}function U_(e,t){return f_(e.getMonth()+1,t,2)}function H_(e,t){return f_(e.getMinutes(),t,2)}function Y_(e,t){return f_(e.getSeconds(),t,2)}function J_(e){var t=e.getDay();return 0===t?7:t}function G_(e,t){return f_(oy.count(xy(e),e),t,2)}function W_(e,t){var n=e.getDay();return e=n>=4||0===n?cy(e):cy.ceil(e),f_(cy.count(xy(e),e)+(4===xy(e).getDay()),t,2)}function V_(e){return e.getDay()}function Q_(e,t){return f_(ay.count(xy(e),e),t,2)}function X_(e,t){return f_(e.getFullYear()%100,t,2)}function K_(e,t){return f_(e.getFullYear()%1e4,t,4)}function $_(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+f_(t/60|0,"0",2)+f_(t%60,"0",2)}function eb(e,t){return f_(e.getUTCDate(),t,2)}function tb(e,t){return f_(e.getUTCHours(),t,2)}function nb(e,t){return f_(e.getUTCHours()%12||12,t,2)}function ib(e,t){return f_(1+Py.count($y(e),e),t,3)}function rb(e,t){return f_(e.getUTCMilliseconds(),t,3)}function ob(e,t){return rb(e,t)+"000"}function ab(e,t){return f_(e.getUTCMonth()+1,t,2)}function sb(e,t){return f_(e.getUTCMinutes(),t,2)}function lb(e,t){return f_(e.getUTCSeconds(),t,2)}function cb(e){var t=e.getUTCDay();return 0===t?7:t}function ub(e,t){return f_(Ny.count($y(e),e),t,2)}function db(e,t){var n=e.getUTCDay();return e=n>=4||0===n?Fy(e):Fy.ceil(e),f_(Fy.count($y(e),e)+(4===$y(e).getUTCDay()),t,2)}function hb(e){return e.getUTCDay()}function pb(e,t){return f_(Dy.count($y(e),e),t,2)}function fb(e,t){return f_(e.getUTCFullYear()%100,t,2)}function mb(e,t){return f_(e.getUTCFullYear()%1e4,t,4)}function gb(){return"+0000"}function vb(){return"%"}function yb(e){return+e}function _b(e){return Math.floor(+e/1e3)}function bb(e){return o_=r_(e),a_=o_.format,s_=o_.parse,l_=o_.utcFormat,c_=o_.utcParse,o_}bb({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"]});var wb="%Y-%m-%dT%H:%M:%S.%LZ",Sb=Date.prototype.toISOString?function(e){return e.toISOString()}:l_(wb),xb=+new Date("2000-01-01T00:00:00.000Z")?function(e){var t=new Date(e);return isNaN(t)?null:t}:c_(wb),Cb=31536e6;function kb(e){return new Date(e)}function Tb(e){return e instanceof Date?+e:+new Date(+e)}function Ab(e,t,n,i,r,o,a,s,l){var c=vv(pv,$o),u=c.invert,d=c.domain,h=l(".%L"),p=l(":%S"),f=l("%I:%M"),m=l("%I %p"),g=l("%a %d"),v=l("%b %d"),y=l("%B"),_=l("%Y"),b=[[a,1,1e3],[a,5,5e3],[a,15,15e3],[a,30,3e4],[o,1,6e4],[o,5,3e5],[o,15,9e5],[o,30,18e5],[r,1,36e5],[r,3,108e5],[r,6,216e5],[r,12,432e5],[i,1,864e5],[i,2,1728e5],[n,1,6048e5],[t,1,2592e6],[t,3,7776e6],[e,1,Cb]];function w(s){return(a(s)1)&&(e-=Math.floor(e));var t=Math.abs(e-.5);return Yw.h=360*e-100,Yw.s=1.5-1.5*t,Yw.l=.8-.9*t,Yw+""}function Gw(e){var t=e.length;return function(n){return e[Math.max(0,Math.min(t-1,Math.floor(n*t)))]}}var Ww=Gw(Eb("44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725")),Vw=Gw(Eb("00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf")),Qw=Gw(Eb("00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4")),Xw=Gw(Eb("0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921"));function Kw(e,t){return e.each(function(){var e=t.apply(this,arguments),n=Sr(this);for(var i in e)n.attr(i,e[i])})}function $w(e,t){for(var n in t)e.attr(n,t[n]);return e}function eS(e,t,n){return e.each(function(){var e=t.apply(this,arguments),i=Sr(this);for(var r in e)i.style(r,e[r],n)})}function tS(e,t,n){for(var i in t)e.style(i,t[i],n);return e}function nS(e,t){return e.each(function(){var e=t.apply(this,arguments),n=Sr(this);for(var i in e)n.property(i,e[i])})}function iS(e,t){for(var n in t)e.property(n,t[n]);return e}function rS(e,t){return e.each(function(){var n=t.apply(this,arguments),i=Sr(this).transition(e);for(var r in n)i.attr(r,n[r])})}function oS(e,t){for(var n in t)e.attr(n,t[n]);return e}function aS(e,t,n){return e.each(function(){var i=t.apply(this,arguments),r=Sr(this).transition(e);for(var o in i)r.style(o,i[o],n)})}function sS(e,t,n){for(var i in t)e.style(i,t[i],n);return e}function lS(e){return function(){return e}}wr.prototype.attrs=function(e){return("function"==typeof e?Kw:$w)(this,e)},wr.prototype.styles=function(e,t){return("function"==typeof e?eS:tS)(this,e,null==t?"":t)},wr.prototype.properties=function(e){return("function"==typeof e?nS:iS)(this,e)},Cs.prototype.attrs=function(e){return("function"==typeof e?rS:oS)(this,e)},Cs.prototype.styles=function(e,t){return("function"==typeof e?aS:sS)(this,e,null==t?"":t)};var cS=Math.abs,uS=Math.atan2,dS=Math.cos,hS=Math.max,pS=Math.min,fS=Math.sin,mS=Math.sqrt,gS=1e-12,vS=Math.PI,yS=vS/2,_S=2*vS;function bS(e){return e>1?0:e<-1?vS:Math.acos(e)}function wS(e){return e>=1?yS:e<=-1?-yS:Math.asin(e)}function SS(e){return e.innerRadius}function xS(e){return e.outerRadius}function CS(e){return e.startAngle}function kS(e){return e.endAngle}function TS(e){return e&&e.padAngle}function AS(e,t,n,i,r,o,a,s){var l=n-e,c=i-t,u=a-r,d=s-o,h=d*l-u*c;if(!(h*hO*O+E*E&&(C=T,k=A),{cx:C,cy:k,x01:-u,y01:-d,x11:C*(r/w-1),y11:k*(r/w-1)}}function MS(){var e=SS,t=xS,n=lS(0),i=null,r=CS,o=kS,a=TS,s=null;function l(){var l,c,u=+e.apply(this,arguments),d=+t.apply(this,arguments),h=r.apply(this,arguments)-yS,p=o.apply(this,arguments)-yS,f=cS(p-h),m=p>h;if(s||(s=l=Sl()),dgS)if(f>_S-gS)s.moveTo(d*dS(h),d*fS(h)),s.arc(0,0,d,h,p,!m),u>gS&&(s.moveTo(u*dS(p),u*fS(p)),s.arc(0,0,u,p,h,m));else{var g,v,y=h,_=p,b=h,w=p,S=f,x=f,C=a.apply(this,arguments)/2,k=C>gS&&(i?+i.apply(this,arguments):mS(u*u+d*d)),T=pS(cS(d-u)/2,+n.apply(this,arguments)),A=T,Z=T;if(k>gS){var M=wS(k/u*fS(C)),O=wS(k/d*fS(C));(S-=2*M)>gS?(b+=M*=m?1:-1,w-=M):(S=0,b=w=(h+p)/2),(x-=2*O)>gS?(y+=O*=m?1:-1,_-=O):(x=0,y=_=(h+p)/2)}var E=d*dS(y),P=d*fS(y),I=u*dS(w),q=u*fS(w);if(T>gS){var N,D=d*dS(_),R=d*fS(_),L=u*dS(b),F=u*fS(b);if(f<=_S-gS&&(N=AS(E,P,L,F,D,R,I,q))){var B=E-N[0],j=P-N[1],z=D-N[0],U=R-N[1],H=1/fS(bS((B*z+j*U)/(mS(B*B+j*j)*mS(z*z+U*U)))/2),Y=mS(N[0]*N[0]+N[1]*N[1]);A=pS(T,(u-Y)/(H-1)),Z=pS(T,(d-Y)/(H+1))}}x>gS?Z>gS?(g=ZS(L,F,E,P,d,Z,m),v=ZS(D,R,I,q,d,Z,m),s.moveTo(g.cx+g.x01,g.cy+g.y01),ZgS&&S>gS?A>gS?(g=ZS(I,q,D,R,u,-A,m),v=ZS(E,P,L,F,u,-A,m),s.lineTo(g.cx+g.x01,g.cy+g.y01),A=u;--d)s.point(g[d],v[d]);s.lineEnd(),s.areaEnd()}m&&(g[c]=+e(h,c,l),v[c]=+n(h,c,l),s.point(t?+t(h,c,l):g[c],i?+i(h,c,l):v[c]))}if(p)return s=null,p+""||null}function c(){return qS().defined(r).curve(a).context(o)}return l.x=function(n){return arguments.length?(e="function"==typeof n?n:lS(+n),t=null,l):e},l.x0=function(t){return arguments.length?(e="function"==typeof t?t:lS(+t),l):e},l.x1=function(e){return arguments.length?(t=null==e?null:"function"==typeof e?e:lS(+e),l):t},l.y=function(e){return arguments.length?(n="function"==typeof e?e:lS(+e),i=null,l):n},l.y0=function(e){return arguments.length?(n="function"==typeof e?e:lS(+e),l):n},l.y1=function(e){return arguments.length?(i=null==e?null:"function"==typeof e?e:lS(+e),l):i},l.lineX0=l.lineY0=function(){return c().x(e).y(n)},l.lineY1=function(){return c().x(e).y(i)},l.lineX1=function(){return c().x(t).y(n)},l.defined=function(e){return arguments.length?(r="function"==typeof e?e:lS(!!e),l):r},l.curve=function(e){return arguments.length?(a=e,null!=o&&(s=a(o)),l):a},l.context=function(e){return arguments.length?(null==e?o=s=null:s=a(o=e),l):o},l}function DS(e,t){return te?1:t>=e?0:NaN}function RS(e){return e}function LS(){var e=RS,t=DS,n=null,i=lS(0),r=lS(_S),o=lS(0);function a(a){var s,l,c,u,d,h=a.length,p=0,f=new Array(h),m=new Array(h),g=+i.apply(this,arguments),v=Math.min(_S,Math.max(-_S,r.apply(this,arguments)-g)),y=Math.min(Math.abs(v)/h,o.apply(this,arguments)),_=y*(v<0?-1:1);for(s=0;s0&&(p+=d);for(null!=t?f.sort(function(e,n){return t(m[e],m[n])}):null!=n&&f.sort(function(e,t){return n(a[e],a[t])}),s=0,c=p?(v-h*_)/p:0;s0?d*c:0)+_,padAngle:y};return m}return a.value=function(t){return arguments.length?(e="function"==typeof t?t:lS(+t),a):e},a.sortValues=function(e){return arguments.length?(t=e,n=null,a):t},a.sort=function(e){return arguments.length?(n=e,t=null,a):n},a.startAngle=function(e){return arguments.length?(i="function"==typeof e?e:lS(+e),a):i},a.endAngle=function(e){return arguments.length?(r="function"==typeof e?e:lS(+e),a):r},a.padAngle=function(e){return arguments.length?(o="function"==typeof e?e:lS(+e),a):o},a}OS.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t)}}};var FS=jS(ES);function BS(e){this._curve=e}function jS(e){function t(t){return new BS(e(t))}return t._curve=e,t}function zS(e){var t=e.curve;return e.angle=e.x,delete e.x,e.radius=e.y,delete e.y,e.curve=function(e){return arguments.length?t(jS(e)):t()._curve},e}function US(){return zS(qS().curve(FS))}function HS(){var e=NS().curve(FS),t=e.curve,n=e.lineX0,i=e.lineX1,r=e.lineY0,o=e.lineY1;return e.angle=e.x,delete e.x,e.startAngle=e.x0,delete e.x0,e.endAngle=e.x1,delete e.x1,e.radius=e.y,delete e.y,e.innerRadius=e.y0,delete e.y0,e.outerRadius=e.y1,delete e.y1,e.lineStartAngle=function(){return zS(n())},delete e.lineX0,e.lineEndAngle=function(){return zS(i())},delete e.lineX1,e.lineInnerRadius=function(){return zS(r())},delete e.lineY0,e.lineOuterRadius=function(){return zS(o())},delete e.lineY1,e.curve=function(e){return arguments.length?t(jS(e)):t()._curve},e}function YS(e,t){return[(t=+t)*Math.cos(e-=Math.PI/2),t*Math.sin(e)]}BS.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(e,t){this._curve.point(t*Math.sin(e),t*-Math.cos(e))}};var JS=Array.prototype.slice;function GS(e){return e.source}function WS(e){return e.target}function VS(e){var t=GS,n=WS,i=PS,r=IS,o=null;function a(){var a,s=JS.call(arguments),l=t.apply(this,s),c=n.apply(this,s);if(o||(o=a=Sl()),e(o,+i.apply(this,(s[0]=l,s)),+r.apply(this,s),+i.apply(this,(s[0]=c,s)),+r.apply(this,s)),a)return o=null,a+""||null}return a.source=function(e){return arguments.length?(t=e,a):t},a.target=function(e){return arguments.length?(n=e,a):n},a.x=function(e){return arguments.length?(i="function"==typeof e?e:lS(+e),a):i},a.y=function(e){return arguments.length?(r="function"==typeof e?e:lS(+e),a):r},a.context=function(e){return arguments.length?(o=null==e?null:e,a):o},a}function QS(e,t,n,i,r){e.moveTo(t,n),e.bezierCurveTo(t=(t+i)/2,n,t,r,i,r)}function XS(e,t,n,i,r){e.moveTo(t,n),e.bezierCurveTo(t,n=(n+r)/2,i,n,i,r)}function KS(e,t,n,i,r){var o=YS(t,n),a=YS(t,n=(n+r)/2),s=YS(i,n),l=YS(i,r);e.moveTo(o[0],o[1]),e.bezierCurveTo(a[0],a[1],s[0],s[1],l[0],l[1])}function $S(){return VS(QS)}function ex(){return VS(XS)}function tx(){var e=VS(KS);return e.angle=e.x,delete e.x,e.radius=e.y,delete e.y,e}var nx={draw:function(e,t){var n=Math.sqrt(t/vS);e.moveTo(n,0),e.arc(0,0,n,0,_S)}},ix={draw:function(e,t){var n=Math.sqrt(t/5)/2;e.moveTo(-3*n,-n),e.lineTo(-n,-n),e.lineTo(-n,-3*n),e.lineTo(n,-3*n),e.lineTo(n,-n),e.lineTo(3*n,-n),e.lineTo(3*n,n),e.lineTo(n,n),e.lineTo(n,3*n),e.lineTo(-n,3*n),e.lineTo(-n,n),e.lineTo(-3*n,n),e.closePath()}},rx=Math.sqrt(1/3),ox=2*rx,ax={draw:function(e,t){var n=Math.sqrt(t/ox),i=n*rx;e.moveTo(0,-n),e.lineTo(i,0),e.lineTo(0,n),e.lineTo(-i,0),e.closePath()}},sx=Math.sin(vS/10)/Math.sin(7*vS/10),lx=Math.sin(_S/10)*sx,cx=-Math.cos(_S/10)*sx,ux={draw:function(e,t){var n=Math.sqrt(.8908130915292852*t),i=lx*n,r=cx*n;e.moveTo(0,-n),e.lineTo(i,r);for(var o=1;o<5;++o){var a=_S*o/5,s=Math.cos(a),l=Math.sin(a);e.lineTo(l*n,-s*n),e.lineTo(s*i-l*r,l*i+s*r)}e.closePath()}},dx={draw:function(e,t){var n=Math.sqrt(t),i=-n/2;e.rect(i,i,n,n)}},hx=Math.sqrt(3),px={draw:function(e,t){var n=-Math.sqrt(t/(3*hx));e.moveTo(0,2*n),e.lineTo(-hx*n,-n),e.lineTo(hx*n,-n),e.closePath()}},fx=-.5,mx=Math.sqrt(3)/2,gx=1/Math.sqrt(12),vx=3*(gx/2+1),yx={draw:function(e,t){var n=Math.sqrt(t/vx),i=n/2,r=n*gx,o=i,a=n*gx+n,s=-o,l=a;e.moveTo(i,r),e.lineTo(o,a),e.lineTo(s,l),e.lineTo(fx*i-mx*r,mx*i+fx*r),e.lineTo(fx*o-mx*a,mx*o+fx*a),e.lineTo(fx*s-mx*l,mx*s+fx*l),e.lineTo(fx*i+mx*r,fx*r-mx*i),e.lineTo(fx*o+mx*a,fx*a-mx*o),e.lineTo(fx*s+mx*l,fx*l-mx*s),e.closePath()}},_x=[nx,ix,ax,dx,ux,px,yx];function bx(){var e=lS(nx),t=lS(64),n=null;function i(){var i;if(n||(n=i=Sl()),e.apply(this,arguments).draw(n,+t.apply(this,arguments)),i)return n=null,i+""||null}return i.type=function(t){return arguments.length?(e="function"==typeof t?t:lS(t),i):e},i.size=function(e){return arguments.length?(t="function"==typeof e?e:lS(+e),i):t},i.context=function(e){return arguments.length?(n=null==e?null:e,i):n},i}function wx(){}function Sx(e,t,n){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+n)/6)}function xx(e){this._context=e}function Cx(e){return new xx(e)}function kx(e){this._context=e}function Tx(e){return new kx(e)}function Ax(e){this._context=e}function Zx(e){return new Ax(e)}function Mx(e,t){this._basis=new xx(e),this._beta=t}xx.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:Sx(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Sx(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}},kx.prototype={areaStart:wx,areaEnd:wx,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:Sx(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}},Ax.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var n=(this._x0+4*this._x1+e)/6,i=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(n,i):this._context.moveTo(n,i);break;case 3:this._point=4;default:Sx(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}},Mx.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var e=this._x,t=this._y,n=e.length-1;if(n>0)for(var i,r=e[0],o=t[0],a=e[n]-r,s=t[n]-o,l=-1;++l<=n;)this._basis.point(this._beta*e[l]+(1-this._beta)*(r+(i=l/n)*a),this._beta*t[l]+(1-this._beta)*(o+i*s));this._x=this._y=null,this._basis.lineEnd()},point:function(e,t){this._x.push(+e),this._y.push(+t)}};var Ox=function e(t){function n(e){return 1===t?new xx(e):new Mx(e,t)}return n.beta=function(t){return e(+t)},n}(.85);function Ex(e,t,n){e._context.bezierCurveTo(e._x1+e._k*(e._x2-e._x0),e._y1+e._k*(e._y2-e._y0),e._x2+e._k*(e._x1-t),e._y2+e._k*(e._y1-n),e._x2,e._y2)}function Px(e,t){this._context=e,this._k=(1-t)/6}Px.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:Ex(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2,this._x1=e,this._y1=t;break;case 2:this._point=3;default:Ex(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Ix=function e(t){function n(e){return new Px(e,t)}return n.tension=function(t){return e(+t)},n}(0);function qx(e,t){this._context=e,this._k=(1-t)/6}qx.prototype={areaStart:wx,areaEnd:wx,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(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:Ex(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Nx=function e(t){function n(e){return new qx(e,t)}return n.tension=function(t){return e(+t)},n}(0);function Dx(e,t){this._context=e,this._k=(1-t)/6}Dx.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(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Ex(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Rx=function e(t){function n(e){return new Dx(e,t)}return n.tension=function(t){return e(+t)},n}(0);function Lx(e,t,n){var i=e._x1,r=e._y1,o=e._x2,a=e._y2;if(e._l01_a>gS){var s=2*e._l01_2a+3*e._l01_a*e._l12_a+e._l12_2a,l=3*e._l01_a*(e._l01_a+e._l12_a);i=(i*s-e._x0*e._l12_2a+e._x2*e._l01_2a)/l,r=(r*s-e._y0*e._l12_2a+e._y2*e._l01_2a)/l}if(e._l23_a>gS){var c=2*e._l23_2a+3*e._l23_a*e._l12_a+e._l12_2a,u=3*e._l23_a*(e._l23_a+e._l12_a);o=(o*c+e._x1*e._l23_2a-t*e._l12_2a)/u,a=(a*c+e._y1*e._l23_2a-n*e._l12_2a)/u}e._context.bezierCurveTo(i,r,o,a,e._x2,e._y2)}function Fx(e,t){this._context=e,this._alpha=t}Fx.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._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){if(e=+e,t=+t,this._point){var n=this._x2-e,i=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+i*i,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3;default:Lx(this,e,t)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Bx=function e(t){function n(e){return t?new Fx(e,t):new Px(e,0)}return n.alpha=function(t){return e(+t)},n}(.5);function jx(e,t){this._context=e,this._alpha=t}jx.prototype={areaStart:wx,areaEnd:wx,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._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=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(e,t){if(e=+e,t=+t,this._point){var n=this._x2-e,i=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+i*i,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:Lx(this,e,t)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var zx=function e(t){function n(e){return t?new jx(e,t):new qx(e,0)}return n.alpha=function(t){return e(+t)},n}(.5);function Ux(e,t){this._context=e,this._alpha=t}Ux.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._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){if(e=+e,t=+t,this._point){var n=this._x2-e,i=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+i*i,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Lx(this,e,t)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Hx=function e(t){function n(e){return t?new Ux(e,t):new Dx(e,0)}return n.alpha=function(t){return e(+t)},n}(.5);function Yx(e){this._context=e}function Jx(e){return new Yx(e)}function Gx(e){return e<0?-1:1}function Wx(e,t,n){var i=e._x1-e._x0,r=t-e._x1,o=(e._y1-e._y0)/(i||r<0&&-0),a=(n-e._y1)/(r||i<0&&-0),s=(o*r+a*i)/(i+r);return(Gx(o)+Gx(a))*Math.min(Math.abs(o),Math.abs(a),.5*Math.abs(s))||0}function Vx(e,t){var n=e._x1-e._x0;return n?(3*(e._y1-e._y0)/n-t)/2:t}function Qx(e,t,n){var i=e._x0,r=e._x1,o=e._y1,a=(r-i)/3;e._context.bezierCurveTo(i+a,e._y0+a*t,r-a,o-a*n,r,o)}function Xx(e){this._context=e}function Kx(e){this._context=new $x(e)}function $x(e){this._context=e}function eC(e){return new Xx(e)}function tC(e){return new Kx(e)}function nC(e){this._context=e}function iC(e){var t,n,i=e.length-1,r=new Array(i),o=new Array(i),a=new Array(i);for(r[0]=0,o[0]=2,a[0]=e[0]+2*e[1],t=1;t=0;--t)r[t]=(a[t]-r[t+1])/o[t];for(o[i-1]=(e[i]+r[i-1])/2,t=0;t1)for(var n,i,r,o=1,a=e[t[0]],s=a.length;o=0;)n[t]=t;return n}function dC(e,t){return e[t]}function hC(){var e=lS([]),t=uC,n=cC,i=dC;function r(r){var o,a,s=e.apply(this,arguments),l=r.length,c=s.length,u=new Array(c);for(o=0;o0){for(var n,i,r,o=0,a=e[0].length;o1)for(var n,i,r,o,a,s,l=0,c=e[t[0]].length;l=0?(i[0]=o,i[1]=o+=r):r<0?(i[1]=a,i[0]=a+=r):i[0]=o}function mC(e,t){if((n=e.length)>0){for(var n,i=0,r=e[t[0]],o=r.length;i0&&(i=(n=e[t[0]]).length)>0){for(var n,i,r,o=0,a=1;a=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var n=this._x*(1-this._t)+e*this._t;this._context.lineTo(n,this._y),this._context.lineTo(n,t)}}this._x=e,this._y=t}},TC.prototype={constructor:TC,insert:function(e,t){var n,i,r;if(e){if(t.P=e,t.N=e.N,e.N&&(e.N.P=t),e.N=t,e.R){for(e=e.R;e.L;)e=e.L;e.L=t}else e.R=t;n=e}else this._?(e=OC(this._),t.P=null,t.N=e,e.P=e.L=t,n=e):(t.P=t.N=null,this._=t,n=null);for(t.L=t.R=null,t.U=n,t.C=!0,e=t;n&&n.C;)n===(i=n.U).L?(r=i.R)&&r.C?(n.C=r.C=!1,i.C=!0,e=i):(e===n.R&&(ZC(this,n),n=(e=n).U),n.C=!1,i.C=!0,MC(this,i)):(r=i.L)&&r.C?(n.C=r.C=!1,i.C=!0,e=i):(e===n.L&&(MC(this,n),n=(e=n).U),n.C=!1,i.C=!0,ZC(this,i)),n=e.U;this._.C=!1},remove:function(e){e.N&&(e.N.P=e.P),e.P&&(e.P.N=e.N),e.N=e.P=null;var t,n,i,r=e.U,o=e.L,a=e.R;if(n=o?a?OC(a):o:a,r?r.L===e?r.L=n:r.R=n:this._=n,o&&a?(i=n.C,n.C=e.C,n.L=o,o.U=n,n!==a?(r=n.U,n.U=e.U,r.L=e=n.R,n.R=a,a.U=n):(n.U=r,r=n,e=n.R)):(i=e.C,e=n),e&&(e.U=r),!i)if(e&&e.C)e.C=!1;else{do{if(e===this._)break;if(e===r.L){if((t=r.R).C&&(t.C=!1,r.C=!0,ZC(this,r),t=r.R),t.L&&t.L.C||t.R&&t.R.C){t.R&&t.R.C||(t.L.C=!1,t.C=!0,MC(this,t),t=r.R),t.C=r.C,r.C=t.R.C=!1,ZC(this,r),e=this._;break}}else if((t=r.L).C&&(t.C=!1,r.C=!0,MC(this,r),t=r.L),t.L&&t.L.C||t.R&&t.R.C){t.L&&t.L.C||(t.R.C=!1,t.C=!0,ZC(this,t),t=r.L),t.C=r.C,r.C=t.L.C=!1,MC(this,r),e=this._;break}t.C=!0,e=r,r=r.U}while(!e.C);e&&(e.C=!1)}}};var EC=TC;function PC(e,t,n,i){var r=[null,null],o=nk.push(r)-1;return r.left=e,r.right=t,n&&qC(r,e,t,n),i&&qC(r,t,e,i),ek[e.index].halfedges.push(o),ek[t.index].halfedges.push(o),r}function IC(e,t,n){var i=[t,n];return i.left=e,i}function qC(e,t,n,i){e[0]||e[1]?e.left===n?e[1]=i:e[0]=i:(e[0]=i,e.left=t,e.right=n)}function NC(e,t,n,i,r){var o,a=e[0],s=e[1],l=a[0],c=a[1],u=0,d=1,h=s[0]-l,p=s[1]-c;if(o=t-l,h||!(o>0)){if(o/=h,h<0){if(o0){if(o>d)return;o>u&&(u=o)}if(o=i-l,h||!(o<0)){if(o/=h,h<0){if(o>d)return;o>u&&(u=o)}else if(h>0){if(o0)){if(o/=p,p<0){if(o0){if(o>d)return;o>u&&(u=o)}if(o=r-c,p||!(o<0)){if(o/=p,p<0){if(o>d)return;o>u&&(u=o)}else if(p>0){if(o0||d<1)||(u>0&&(e[0]=[l+u*h,c+u*p]),d<1&&(e[1]=[l+d*h,c+d*p]),!0)}}}}}function DC(e,t,n,i,r){var o=e[1];if(o)return!0;var a,s,l=e[0],c=e.left,u=e.right,d=c[0],h=c[1],p=u[0],f=u[1],m=(d+p)/2;if(f===h){if(m=i)return;if(d>p){if(l){if(l[1]>=r)return}else l=[m,n];o=[m,r]}else{if(l){if(l[1]1)if(d>p){if(l){if(l[1]>=r)return}else l=[(n-s)/a,n];o=[(r-s)/a,r]}else{if(l){if(l[1]=i)return}else l=[t,a*t+s];o=[i,a*i+s]}else{if(l){if(l[0]=-rk)){var p=l*l+c*c,f=u*u+d*d,m=(d*p-c*f)/h,g=(l*f-u*p)/h,v=jC.pop()||new zC;v.arc=e,v.site=r,v.x=m+a,v.y=(v.cy=g+s)+Math.sqrt(m*m+g*g),e.circle=v;for(var y=null,_=tk._;_;)if(v.y<_.y||v.y===_.y&&v.x<=_.x){if(!_.L){y=_.P;break}_=_.L}else{if(!_.R){y=_;break}_=_.R}tk.insert(y,v),y||(BC=v)}}}}function HC(e){var t=e.circle;t&&(t.P||(BC=t.N),tk.remove(t),jC.push(t),AC(t),e.circle=null)}var YC=[];function JC(){AC(this),this.edge=this.site=this.circle=null}function GC(e){var t=YC.pop()||new JC;return t.site=e,t}function WC(e){HC(e),$C.remove(e),YC.push(e),AC(e)}function VC(e){var t=e.circle,n=t.x,i=t.cy,r=[n,i],o=e.P,a=e.N,s=[e];WC(e);for(var l=o;l.circle&&Math.abs(n-l.circle.x)ik)s=s.L;else{if(!((r=o-KC(s,a))>ik)){i>-ik?(t=s.P,n=s):r>-ik?(t=s,n=s.N):t=n=s;break}if(!s.R){t=s;break}s=s.R}!function(e){ek[e.index]={site:e,halfedges:[]}}(e);var l=GC(e);if($C.insert(t,l),t||n){if(t===n)return HC(t),n=GC(t.site),$C.insert(l,n),l.edge=n.edge=PC(t.site,l.site),UC(t),void UC(n);if(n){HC(t),HC(n);var c=t.site,u=c[0],d=c[1],h=e[0]-u,p=e[1]-d,f=n.site,m=f[0]-u,g=f[1]-d,v=2*(h*g-p*m),y=h*h+p*p,_=m*m+g*g,b=[(g*y-p*_)/v+u,(h*_-m*y)/v+d];qC(n.edge,c,f,b),l.edge=PC(c,e,null,b),n.edge=PC(e,f,null,b),UC(t),UC(n)}else l.edge=PC(t.site,l.site)}}function XC(e,t){var n=e.site,i=n[0],r=n[1],o=r-t;if(!o)return i;var a=e.P;if(!a)return-1/0;var s=(n=a.site)[0],l=n[1],c=l-t;if(!c)return s;var u=s-i,d=1/o-1/c,h=u/c;return d?(-h+Math.sqrt(h*h-2*d*(u*u/(-2*c)-l+c/2+r-o/2)))/d+i:(i+s)/2}function KC(e,t){var n=e.N;if(n)return XC(n,t);var i=e.site;return i[1]===t?i[0]:1/0}var $C,ek,tk,nk,ik=1e-6,rk=1e-12;function ok(e,t,n){return(e[0]-n[0])*(t[1]-e[1])-(e[0]-t[0])*(n[1]-e[1])}function ak(e,t){return t[1]-e[1]||t[0]-e[0]}function sk(e,t){var n,i,r,o=e.sort(ak).pop();for(nk=[],ek=new Array(e.length),$C=new EC,tk=new EC;;)if(r=BC,o&&(!r||o[1]ik||Math.abs(r[0][1]-r[1][1])>ik)||delete nk[o]}(a,s,l,c),function(e,t,n,i){var r,o,a,s,l,c,u,d,h,p,f,m,g=ek.length,v=!0;for(r=0;rik||Math.abs(m-h)>ik)&&(l.splice(s,0,nk.push(IC(a,p,Math.abs(f-e)ik?[e,Math.abs(d-e)ik?[Math.abs(h-i)ik?[n,Math.abs(d-n)ik?[Math.abs(h-t)=s)return null;var l=e-r.site[0],c=t-r.site[1],u=l*l+c*c;do{r=o.cells[i=a],a=null,r.halfedges.forEach(function(n){var i=o.edges[n],s=i.left;if(s!==r.site&&s||(s=i.right)){var l=e-s[0],c=t-s[1],d=l*l+c*c;di?(i+r)/2:Math.min(0,i)||Math.max(0,r),a>o?(o+a)/2:Math.min(0,o)||Math.max(0,a))}function Sk(){var e,t,n=gk,i=vk,r=wk,o=_k,a=bk,s=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],c=250,u=ya,d=si("start","zoom","end"),h=500,p=0;function f(e){e.property("__zoom",yk).on("wheel.zoom",w).on("mousedown.zoom",S).on("dblclick.zoom",x).filter(a).on("touchstart.zoom",C).on("touchmove.zoom",k).on("touchend.zoom touchcancel.zoom",T).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(e,t){return(t=Math.max(s[0],Math.min(s[1],t)))===e.k?e:new dk(t,e.x,e.y)}function g(e,t,n){var i=t[0]-n[0]*e.k,r=t[1]-n[1]*e.k;return i===e.x&&r===e.y?e:new dk(e.k,i,r)}function v(e){return[(+e[0][0]+ +e[1][0])/2,(+e[0][1]+ +e[1][1])/2]}function y(e,t,n){e.on("start.zoom",function(){_(this,arguments).start()}).on("interrupt.zoom end.zoom",function(){_(this,arguments).end()}).tween("zoom",function(){var e=this,r=arguments,o=_(e,r),a=i.apply(e,r),s=n||v(a),l=Math.max(a[1][0]-a[0][0],a[1][1]-a[0][1]),c=e.__zoom,d="function"==typeof t?t.apply(e,r):t,h=u(c.invert(s).concat(l/c.k),d.invert(s).concat(l/d.k));return function(e){if(1===e)e=d;else{var t=h(e),n=l/t[2];e=new dk(n,s[0]-t[0]*n,s[1]-t[1]*n)}o.zoom(null,e)}})}function _(e,t,n){return!n&&e.__zooming||new b(e,t)}function b(e,t){this.that=e,this.args=t,this.active=0,this.extent=i.apply(e,t),this.taps=0}function w(){if(n.apply(this,arguments)){var e=_(this,arguments),t=this.__zoom,i=Math.max(s[0],Math.min(s[1],t.k*Math.pow(2,o.apply(this,arguments)))),a=Mr(this);t.k!==i&&(e.wheel?(e.mouse[0][0]===a[0]&&e.mouse[0][1]===a[1]||(e.mouse[1]=t.invert(e.mouse[0]=a)),clearTimeout(e.wheel)):(e.mouse=[a,t.invert(a)],ts(this),e.start()),mk(),e.wheel=setTimeout(c,150),e.zoom("mouse",r(g(m(t,i),e.mouse[0],e.mouse[1]),e.extent,l)))}function c(){e.wheel=null,e.end()}}function S(){if(!t&&n.apply(this,arguments)){var e=_(this,arguments,!0),i=Sr(lr.view).on("mousemove.zoom",c,!0).on("mouseup.zoom",u,!0),o=Mr(this),a=lr.clientX,s=lr.clientY;Nr(lr.view),fk(),e.mouse=[o,this.__zoom.invert(o)],ts(this),e.start()}function c(){if(mk(),!e.moved){var t=lr.clientX-a,n=lr.clientY-s;e.moved=t*t+n*n>p}e.zoom("mouse",r(g(e.that.__zoom,e.mouse[0]=Mr(e.that),e.mouse[1]),e.extent,l))}function u(){i.on("mousemove.zoom mouseup.zoom",null),Dr(lr.view,e.moved),mk(),e.end()}}function x(){if(n.apply(this,arguments)){var e=this.__zoom,t=Mr(this),o=e.invert(t),a=e.k*(lr.shiftKey?.5:2),s=r(g(m(e,a),t,o),i.apply(this,arguments),l);mk(),c>0?Sr(this).transition().duration(c).call(y,s,t):Sr(this).call(f.transform,s)}}function C(){if(n.apply(this,arguments)){var t,i,r,o,a=lr.touches,s=a.length,l=_(this,arguments,lr.changedTouches.length===s);for(fk(),i=0;i0?r.animate(r._lastPercent,r.options.percent):r.draw(r.options.percent),r._lastPercent=r.options.percent)):(r.options.animation&&r.options.animationDuration>0?r.animate(r._lastPercent,r.options.percent):r.draw(r.options.percent),r._lastPercent=r.options.percent)},this.polarToCartesian=function(e,t,n,i){var r=i*Math.PI/180;return{x:e+Math.sin(r)*n,y:t-Math.cos(r)*n}},this.draw=function(e){var t=(e=void 0===e?r.options.percent:Math.abs(e))>100?100:e,n=2*r.options.radius+2*r.options.outerStrokeWidth;r.options.showBackground&&(n+=2*r.options.backgroundStrokeWidth+r.max(0,2*r.options.backgroundPadding));var i,o,a={x:n/2,y:n/2},c={x:a.x,y:a.y-r.options.radius},u=r.polarToCartesian(a.x,a.y,r.options.radius,360*(r.options.clockwise?t:100-t)/100);if(100===t&&(u.x=u.x+(r.options.clockwise?-.01:.01)),t>50){var d=(0,s.Z)(r.options.clockwise?[1,1]:[1,0],2);i=d[0],o=d[1]}else{var h=(0,s.Z)(r.options.clockwise?[0,1]:[0,0],2);i=h[0],o=h[1]}var f=r.options.animateTitle?e:r.options.percent,m=f>r.options.maxPercent?"".concat(r.options.maxPercent.toFixed(r.options.toFixed),"+"):f.toFixed(r.options.toFixed),g=r.options.animateSubtitle?e:r.options.percent,v={x:a.x,y:a.y,textAnchor:"middle",color:r.options.titleColor,fontSize:r.options.titleFontSize,fontWeight:r.options.titleFontWeight,texts:[],tspans:[]};if(void 0!==r.options.titleFormat&&"Function"===r.options.titleFormat.constructor.name){var y=r.options.titleFormat(f);y instanceof Array?v.texts=(0,p.Z)(y):v.texts.push(y.toString())}else"auto"===r.options.title?v.texts.push(m):r.options.title instanceof Array?v.texts=(0,p.Z)(r.options.title):v.texts.push(r.options.title.toString());var _={x:a.x,y:a.y,textAnchor:"middle",color:r.options.subtitleColor,fontSize:r.options.subtitleFontSize,fontWeight:r.options.subtitleFontWeight,texts:[],tspans:[]};if(void 0!==r.options.subtitleFormat&&"Function"===r.options.subtitleFormat.constructor.name){var b=r.options.subtitleFormat(g);b instanceof Array?_.texts=(0,p.Z)(b):_.texts.push(b.toString())}else r.options.subtitle instanceof Array?_.texts=(0,p.Z)(r.options.subtitle):_.texts.push(r.options.subtitle.toString());var w={text:"".concat(r.options.units),fontSize:r.options.unitsFontSize,fontWeight:r.options.unitsFontWeight,color:r.options.unitsColor},S=0,x=1;if(r.options.showTitle&&(S+=v.texts.length),r.options.showSubtitle&&(S+=_.texts.length),r.options.showTitle){var C,k=(0,l.Z)(v.texts);try{for(k.s();!(C=k.n()).done;)v.tspans.push({span:C.value,dy:r.getRelativeY(x,S)}),x++}catch(Z){k.e(Z)}finally{k.f()}}if(r.options.showSubtitle){var T,A=(0,l.Z)(_.texts);try{for(A.s();!(T=A.n()).done;)_.tspans.push({span:T.value,dy:r.getRelativeY(x,S)}),x++}catch(Z){A.e(Z)}finally{A.f()}}null===r._gradientUUID&&(r._gradientUUID=r.uuid()),r.svg={viewBox:"0 0 ".concat(n," ").concat(n),width:r.options.responsive?"100%":n,height:r.options.responsive?"100%":n,backgroundCircle:{cx:a.x,cy:a.y,r:r.options.radius+r.options.outerStrokeWidth/2+r.options.backgroundPadding,fill:r.options.backgroundColor,fillOpacity:r.options.backgroundOpacity,stroke:r.options.backgroundStroke,strokeWidth:r.options.backgroundStrokeWidth},path:{d:"M ".concat(c.x," ").concat(c.y,"\n A ").concat(r.options.radius," ").concat(r.options.radius," 0 ").concat(i," ").concat(o," ").concat(u.x," ").concat(u.y),stroke:r.options.outerStrokeColor,strokeWidth:r.options.outerStrokeWidth,strokeLinecap:r.options.outerStrokeLinecap,fill:"none"},circle:{cx:a.x,cy:a.y,r:r.options.radius-r.options.space-r.options.outerStrokeWidth/2-r.options.innerStrokeWidth/2,fill:"none",stroke:r.options.innerStrokeColor,strokeWidth:r.options.innerStrokeWidth},title:v,units:w,subtitle:_,image:{x:a.x-r.options.imageWidth/2,y:a.y-r.options.imageHeight/2,src:r.options.imageSrc,width:r.options.imageWidth,height:r.options.imageHeight},outerLinearGradient:{id:"outer-linear-"+r._gradientUUID,colorStop1:r.options.outerStrokeColor,colorStop2:"transparent"===r.options.outerStrokeGradientStopColor?"#FFF":r.options.outerStrokeGradientStopColor},radialGradient:{id:"radial-"+r._gradientUUID,colorStop1:r.options.backgroundColor,colorStop2:"transparent"===r.options.backgroundGradientStopColor?"#FFF":r.options.backgroundGradientStopColor}}},this.getAnimationParameters=function(e,t){var n,i,o,a=r.options.startFromZero||e<0?0:e,s=t<0?0:r.min(t,r.options.maxPercent),l=Math.abs(Math.round(s-a));return l>=100?(n=100,i=r.options.animateTitle||r.options.animateSubtitle?Math.round(l/n):1):(n=l,i=1),(o=Math.round(r.options.animationDuration/n))<10&&(n=r.options.animationDuration/(o=10),i=!r.options.animateTitle&&!r.options.animateSubtitle&&l>100?Math.round(100/n):Math.round(l/n)),i<1&&(i=1),{times:n,step:i,interval:o}},this.animate=function(e,t){r._timerSubscription&&!r._timerSubscription.closed&&r._timerSubscription.unsubscribe();var n=r.options.startFromZero?0:e,i=t,o=r.getAnimationParameters(n,i),a=o.step,s=o.interval,l=n;r._timerSubscription=n=100?(r.draw(i),r._timerSubscription.unsubscribe()):r.draw(l):(r.draw(i),r._timerSubscription.unsubscribe())}):(0,Ck.H)(0,s).subscribe(function(){(l-=a)>=i?!r.options.animateTitle&&!r.options.animateSubtitle&&i>=100?(r.draw(i),r._timerSubscription.unsubscribe()):r.draw(l):(r.draw(i),r._timerSubscription.unsubscribe())})},this.emitClickEvent=function(e){r.options.renderOnClick&&r.animate(0,r.options.percent),r.onClick.emit(e)},this.applyOptions=function(){for(var e=0,t=Object.keys(r.options);e0?+r.options.percent:0,r.options.maxPercent=Math.abs(+r.options.maxPercent),r.options.animationDuration=Math.abs(r.options.animationDuration),r.options.outerStrokeWidth=Math.abs(+r.options.outerStrokeWidth),r.options.innerStrokeWidth=Math.abs(+r.options.innerStrokeWidth),r.options.backgroundPadding=+r.options.backgroundPadding},this.getRelativeY=function(e,t){return(1*(e-t/2)-.18).toFixed(2)+"em"},this.min=function(e,t){return et?e:t},this.uuid=function(){var e=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){var n=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"==t?n:3&n|8).toString(16)})},this.findSvgElement=function(){if(null===this.svgElement){var e=this.elRef.nativeElement.getElementsByTagName("svg");e.length>0&&(this.svgElement=e[0])}},this.checkViewport=function(){r.findSvgElement();var e=r.isInViewport;r.isInViewport=r.isElementInViewport(r.svgElement),e!==r.isInViewport&&r.onViewportChanged.emit({oldValue:e,newValue:r.isInViewport})},this.onScroll=function(e){r.checkViewport()},this.loadEventsForLazyMode=function(){if(r.options.lazy){r.document.addEventListener("scroll",r.onScroll,!0),r.window.addEventListener("resize",r.onScroll,!0),null===r._viewportChangedSubscriber&&(r._viewportChangedSubscriber=r.onViewportChanged.subscribe(function(e){e.newValue&&r.render()}));var e=(0,Ck.H)(0,50).subscribe(function(){null===r.svgElement?r.checkViewport():e.unsubscribe()})}},this.unloadEventsForLazyMode=function(){r.document.removeEventListener("scroll",r.onScroll,!0),r.window.removeEventListener("resize",r.onScroll,!0),null!==r._viewportChangedSubscriber&&(r._viewportChangedSubscriber.unsubscribe(),r._viewportChangedSubscriber=null)},this.document=i,this.window=this.document.defaultView,Object.assign(this.options,t),Object.assign(this.defaultOptions,t)}return(0,m.Z)(e,[{key:"isDrawing",value:function(){return this._timerSubscription&&!this._timerSubscription.closed}},{key:"isElementInViewport",value:function(e){if(null==e)return!1;var t,n=e.getBoundingClientRect(),i=e.parentNode;do{if(t=i.getBoundingClientRect(),n.top>=t.bottom)return!1;if(n.bottom<=t.top)return!1;if(n.left>=t.right)return!1;if(n.right<=t.left)return!1;i=i.parentNode}while(i!=this.document.body);return!(n.top>=(this.window.innerHeight||this.document.documentElement.clientHeight)||n.bottom<=0||n.left>=(this.window.innerWidth||this.document.documentElement.clientWidth)||n.right<=0)}},{key:"ngOnInit",value:function(){this.loadEventsForLazyMode()}},{key:"ngOnDestroy",value:function(){this.unloadEventsForLazyMode()}},{key:"ngOnChanges",value:function(e){this.render(),"lazy"in e&&(e.lazy.currentValue?this.loadEventsForLazyMode():this.unloadEventsForLazyMode())}}]),e}();return e.\u0275fac=function(t){return new(t||e)(y.Y36(zk),y.Y36(y.SBq),y.Y36(_.K0))},e.\u0275cmp=y.Xpm({type:e,selectors:[["circle-progress"]],inputs:{name:"name",class:"class",backgroundGradient:"backgroundGradient",backgroundColor:"backgroundColor",backgroundGradientStopColor:"backgroundGradientStopColor",backgroundOpacity:"backgroundOpacity",backgroundStroke:"backgroundStroke",backgroundStrokeWidth:"backgroundStrokeWidth",backgroundPadding:"backgroundPadding",radius:"radius",space:"space",percent:"percent",toFixed:"toFixed",maxPercent:"maxPercent",renderOnClick:"renderOnClick",units:"units",unitsFontSize:"unitsFontSize",unitsFontWeight:"unitsFontWeight",unitsColor:"unitsColor",outerStrokeGradient:"outerStrokeGradient",outerStrokeWidth:"outerStrokeWidth",outerStrokeColor:"outerStrokeColor",outerStrokeGradientStopColor:"outerStrokeGradientStopColor",outerStrokeLinecap:"outerStrokeLinecap",innerStrokeColor:"innerStrokeColor",innerStrokeWidth:"innerStrokeWidth",titleFormat:"titleFormat",title:"title",titleColor:"titleColor",titleFontSize:"titleFontSize",titleFontWeight:"titleFontWeight",subtitleFormat:"subtitleFormat",subtitle:"subtitle",subtitleColor:"subtitleColor",subtitleFontSize:"subtitleFontSize",subtitleFontWeight:"subtitleFontWeight",imageSrc:"imageSrc",imageHeight:"imageHeight",imageWidth:"imageWidth",animation:"animation",animateTitle:"animateTitle",animateSubtitle:"animateSubtitle",animationDuration:"animationDuration",showTitle:"showTitle",showSubtitle:"showSubtitle",showUnits:"showUnits",showImage:"showImage",showBackground:"showBackground",showInnerStroke:"showInnerStroke",clockwise:"clockwise",responsive:"responsive",startFromZero:"startFromZero",showZeroOuterStroke:"showZeroOuterStroke",lazy:"lazy",templateOptions:["options","templateOptions"]},outputs:{onClick:"onClick"},features:[y.TTD],decls:1,vars:1,consts:[["xmlns","http://www.w3.org/2000/svg","preserveAspectRatio","xMidYMid meet",3,"click",4,"ngIf"],["xmlns","http://www.w3.org/2000/svg","preserveAspectRatio","xMidYMid meet",3,"click"],[4,"ngIf"],["alignment-baseline","baseline",4,"ngIf"],["preserveAspectRatio","none",4,"ngIf"],["offset","5%"],["offset","95%"],["alignment-baseline","baseline"],[4,"ngFor","ngForOf"],["preserveAspectRatio","none"]],template:function(e,t){1&e&&y.YNc(0,jk,9,11,"svg",0),2&e&&y.Q6J("ngIf",t.svg)},directives:[_.O5,_.sg],encapsulation:2}),e}(),Hk=function(){var e=function(){function e(){(0,f.Z)(this,e)}return(0,m.Z)(e,null,[{key:"forRoot",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{ngModule:e,providers:[{provide:zk,useValue:t}]}}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=y.oAB({type:e}),e.\u0275inj=y.cJS({imports:[[_.ez]]}),e}(),Yk=function(){function e(t){(0,f.Z)(this,e),this.rawFile=t;var n,i=(n=t)&&(n.nodeName||n.prop&&n.attr&&n.find)?t.value:t;this["_createFrom"+("string"==typeof i?"FakePath":"Object")](i)}return(0,m.Z)(e,[{key:"_createFromFakePath",value:function(e){this.lastModifiedDate=void 0,this.size=void 0,this.type="like/"+e.slice(e.lastIndexOf(".")+1).toLowerCase(),this.name=e.slice(e.lastIndexOf("/")+e.lastIndexOf("\\")+2)}},{key:"_createFromObject",value:function(e){this.size=e.size,this.type=e.type,this.name=e.name}}]),e}(),Jk=function(){function e(t,n,i){(0,f.Z)(this,e),this.url="/",this.headers=[],this.withCredentials=!0,this.formData=[],this.isReady=!1,this.isUploading=!1,this.isUploaded=!1,this.isSuccess=!1,this.isCancel=!1,this.isError=!1,this.progress=0,this.index=void 0,this.uploader=t,this.some=n,this.options=i,this.file=new Yk(n),this._file=n,t.options&&(this.method=t.options.method||"POST",this.alias=t.options.itemAlias||"file"),this.url=t.options.url}return(0,m.Z)(e,[{key:"upload",value:function(){try{this.uploader.uploadItem(this)}catch(e){this.uploader._onCompleteItem(this,"",0,{}),this.uploader._onErrorItem(this,"",0,{})}}},{key:"cancel",value:function(){this.uploader.cancelItem(this)}},{key:"remove",value:function(){this.uploader.removeFromQueue(this)}},{key:"onBeforeUpload",value:function(){}},{key:"onBuildForm",value:function(e){return{form:e}}},{key:"onProgress",value:function(e){return{progress:e}}},{key:"onSuccess",value:function(e,t,n){return{response:e,status:t,headers:n}}},{key:"onError",value:function(e,t,n){return{response:e,status:t,headers:n}}},{key:"onCancel",value:function(e,t,n){return{response:e,status:t,headers:n}}},{key:"onComplete",value:function(e,t,n){return{response:e,status:t,headers:n}}},{key:"_onBeforeUpload",value:function(){this.isReady=!0,this.isUploading=!0,this.isUploaded=!1,this.isSuccess=!1,this.isCancel=!1,this.isError=!1,this.progress=0,this.onBeforeUpload()}},{key:"_onBuildForm",value:function(e){this.onBuildForm(e)}},{key:"_onProgress",value:function(e){this.progress=e,this.onProgress(e)}},{key:"_onSuccess",value:function(e,t,n){this.isReady=!1,this.isUploading=!1,this.isUploaded=!0,this.isSuccess=!0,this.isCancel=!1,this.isError=!1,this.progress=100,this.index=void 0,this.onSuccess(e,t,n)}},{key:"_onError",value:function(e,t,n){this.isReady=!1,this.isUploading=!1,this.isUploaded=!0,this.isSuccess=!1,this.isCancel=!1,this.isError=!0,this.progress=0,this.index=void 0,this.onError(e,t,n)}},{key:"_onCancel",value:function(e,t,n){this.isReady=!1,this.isUploading=!1,this.isUploaded=!1,this.isSuccess=!1,this.isCancel=!0,this.isError=!1,this.progress=0,this.index=void 0,this.onCancel(e,t,n)}},{key:"_onComplete",value:function(e,t,n){this.onComplete(e,t,n),this.uploader.options.removeAfterUpload&&this.remove()}},{key:"_prepareToUploading",value:function(){this.index=this.index||++this.uploader._nextIndex,this.isReady=!0}}]),e}(),Gk=function(){var e=function(){function e(){(0,f.Z)(this,e)}return(0,m.Z)(e,null,[{key:"getMimeClass",value:function(e){var t="application";return-1!==this.mime_psd.indexOf(e.type)||e.type.match("image.*")?t="image":e.type.match("video.*")?t="video":e.type.match("audio.*")?t="audio":"application/pdf"===e.type?t="pdf":-1!==this.mime_compress.indexOf(e.type)?t="compress":-1!==this.mime_doc.indexOf(e.type)?t="doc":-1!==this.mime_xsl.indexOf(e.type)?t="xls":-1!==this.mime_ppt.indexOf(e.type)&&(t="ppt"),"application"===t&&(t=this.fileTypeDetection(e.name)),t}},{key:"fileTypeDetection",value:function(e){var t={jpg:"image",jpeg:"image",tif:"image",psd:"image",bmp:"image",png:"image",nef:"image",tiff:"image",cr2:"image",dwg:"image",cdr:"image",ai:"image",indd:"image",pin:"image",cdp:"image",skp:"image",stp:"image","3dm":"image",mp3:"audio",wav:"audio",wma:"audio",mod:"audio",m4a:"audio",compress:"compress",zip:"compress",rar:"compress","7z":"compress",lz:"compress",z01:"compress",bz2:"compress",gz:"compress",pdf:"pdf",xls:"xls",xlsx:"xls",ods:"xls",mp4:"video",avi:"video",wmv:"video",mpg:"video",mts:"video",flv:"video","3gp":"video",vob:"video",m4v:"video",mpeg:"video",m2ts:"video",mov:"video",doc:"doc",docx:"doc",eps:"doc",txt:"doc",odt:"doc",rtf:"doc",ppt:"ppt",pptx:"ppt",pps:"ppt",ppsx:"ppt",odp:"ppt"},n=e.split(".");if(n.length<2)return"application";var i=n[n.length-1].toLowerCase();return void 0===t[i]?"application":t[i]}}]),e}();return e.mime_doc=["application/msword","application/msword","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/vnd.openxmlformats-officedocument.wordprocessingml.template","application/vnd.ms-word.document.macroEnabled.12","application/vnd.ms-word.template.macroEnabled.12"],e.mime_xsl=["application/vnd.ms-excel","application/vnd.ms-excel","application/vnd.ms-excel","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/vnd.openxmlformats-officedocument.spreadsheetml.template","application/vnd.ms-excel.sheet.macroEnabled.12","application/vnd.ms-excel.template.macroEnabled.12","application/vnd.ms-excel.addin.macroEnabled.12","application/vnd.ms-excel.sheet.binary.macroEnabled.12"],e.mime_ppt=["application/vnd.ms-powerpoint","application/vnd.ms-powerpoint","application/vnd.ms-powerpoint","application/vnd.ms-powerpoint","application/vnd.openxmlformats-officedocument.presentationml.presentation","application/vnd.openxmlformats-officedocument.presentationml.template","application/vnd.openxmlformats-officedocument.presentationml.slideshow","application/vnd.ms-powerpoint.addin.macroEnabled.12","application/vnd.ms-powerpoint.presentation.macroEnabled.12","application/vnd.ms-powerpoint.presentation.macroEnabled.12","application/vnd.ms-powerpoint.slideshow.macroEnabled.12"],e.mime_psd=["image/photoshop","image/x-photoshop","image/psd","application/photoshop","application/psd","zz-application/zz-winassoc-psd"],e.mime_compress=["application/x-gtar","application/x-gcompress","application/compress","application/x-tar","application/x-rar-compressed","application/octet-stream","application/x-zip-compressed","application/zip-compressed","application/x-7z-compressed","application/gzip","application/x-bzip2"],e}(),Wk=function(){function e(t){(0,f.Z)(this,e),this.isUploading=!1,this.queue=[],this.progress=0,this._nextIndex=0,this.options={autoUpload:!1,isHTML5:!0,filters:[],removeAfterUpload:!1,disableMultipart:!1,formatDataFunction:function(e){return e._file},formatDataFunctionIsAsync:!1},this.setOptions(t),this.response=new y.vpe}return(0,m.Z)(e,[{key:"setOptions",value:function(e){this.options=Object.assign(this.options,e),this.authToken=this.options.authToken,this.authTokenHeader=this.options.authTokenHeader||"Authorization",this.autoUpload=this.options.autoUpload,this.options.filters.unshift({name:"queueLimit",fn:this._queueLimitFilter}),this.options.maxFileSize&&this.options.filters.unshift({name:"fileSize",fn:this._fileSizeFilter}),this.options.allowedFileType&&this.options.filters.unshift({name:"fileType",fn:this._fileTypeFilter}),this.options.allowedMimeType&&this.options.filters.unshift({name:"mimeType",fn:this._mimeTypeFilter});for(var t=0;tthis.options.maxFileSize)}},{key:"_fileTypeFilter",value:function(e){return!(this.options.allowedFileType&&-1===this.options.allowedFileType.indexOf(Gk.getMimeClass(e)))}},{key:"_onErrorItem",value:function(e,t,n,i){e._onError(t,n,i),this.onErrorItem(e,t,n,i)}},{key:"_onCompleteItem",value:function(e,t,n,i){e._onComplete(t,n,i),this.onCompleteItem(e,t,n,i);var r=this.getReadyItems()[0];this.isUploading=!1,r?r.upload():(this.onCompleteAll(),this.progress=this._getTotalProgress(),this._render())}},{key:"_headersGetter",value:function(e){return function(t){return t?e[t.toLowerCase()]||void 0:e}}},{key:"_xhrTransport",value:function(e){var t,n=this,i=this,r=e._xhr=new XMLHttpRequest;if(this._onBeforeUploadItem(e),"number"!=typeof e._file.size)throw new TypeError("The file specified is no longer valid");if(this.options.disableMultipart)t=this.options.formatDataFunction(e);else{t=new FormData,this._onBuildItemForm(e,t);var o=function(){return t.append(e.alias,e._file,e.file.name)};this.options.parametersBeforeFiles||o(),void 0!==this.options.additionalParameter&&Object.keys(this.options.additionalParameter).forEach(function(i){var r=n.options.additionalParameter[i];"string"==typeof r&&r.indexOf("{{file_name}}")>=0&&(r=r.replace("{{file_name}}",e.file.name)),t.append(i,r)}),this.options.parametersBeforeFiles&&o()}if(r.upload.onprogress=function(t){var i=Math.round(t.lengthComputable?100*t.loaded/t.total:0);n._onProgressItem(e,i)},r.onload=function(){var t=n._parseHeaders(r.getAllResponseHeaders()),i=n._transformResponse(r.response,t),o=n._isSuccessCode(r.status)?"Success":"Error";n["_on"+o+"Item"](e,i,r.status,t),n._onCompleteItem(e,i,r.status,t)},r.onerror=function(){var t=n._parseHeaders(r.getAllResponseHeaders()),i=n._transformResponse(r.response,t);n._onErrorItem(e,i,r.status,t),n._onCompleteItem(e,i,r.status,t)},r.onabort=function(){var t=n._parseHeaders(r.getAllResponseHeaders()),i=n._transformResponse(r.response,t);n._onCancelItem(e,i,r.status,t),n._onCompleteItem(e,i,r.status,t)},r.open(e.method,e.url,!0),r.withCredentials=e.withCredentials,this.options.headers){var a,s=(0,l.Z)(this.options.headers);try{for(s.s();!(a=s.n()).done;){var c=a.value;r.setRequestHeader(c.name,c.value)}}catch(p){s.e(p)}finally{s.f()}}if(e.headers.length){var u,d=(0,l.Z)(e.headers);try{for(d.s();!(u=d.n()).done;){var h=u.value;r.setRequestHeader(h.name,h.value)}}catch(p){d.e(p)}finally{d.f()}}this.authToken&&r.setRequestHeader(this.authTokenHeader,this.authToken),r.onreadystatechange=function(){r.readyState==XMLHttpRequest.DONE&&i.response.emit(r.responseText)},this.options.formatDataFunctionIsAsync?t.then(function(e){return r.send(JSON.stringify(e))}):r.send(t),this._render()}},{key:"_getTotalProgress",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(this.options.removeAfterUpload)return e;var t=this.getNotUploadedItems().length,n=t?this.queue.length-t:this.queue.length,i=100/this.queue.length,r=e*i/100;return Math.round(n*i+r)}},{key:"_getFilters",value:function(e){if(!e)return this.options.filters;if(Array.isArray(e))return e;if("string"==typeof e){var t=e.match(/[^\s,]+/g);return this.options.filters.filter(function(e){return-1!==t.indexOf(e.name)})}return this.options.filters}},{key:"_render",value:function(){}},{key:"_queueLimitFilter",value:function(){return void 0===this.options.queueLimit||this.queue.length=200&&e<300||304===e}},{key:"_transformResponse",value:function(e,t){return e}},{key:"_parseHeaders",value:function(e){var t,n,i,r={};return e?(e.split("\n").map(function(e){i=e.indexOf(":"),t=e.slice(0,i).trim().toLowerCase(),n=e.slice(i+1).trim(),t&&(r[t]=r[t]?r[t]+", "+n:n)}),r):r}},{key:"_onWhenAddingFileFailed",value:function(e,t,n){this.onWhenAddingFileFailed(e,t,n)}},{key:"_onAfterAddingFile",value:function(e){this.onAfterAddingFile(e)}},{key:"_onAfterAddingAll",value:function(e){this.onAfterAddingAll(e)}},{key:"_onBeforeUploadItem",value:function(e){e._onBeforeUpload(),this.onBeforeUploadItem(e)}},{key:"_onBuildItemForm",value:function(e,t){e._onBuildForm(t),this.onBuildItemForm(e,t)}},{key:"_onProgressItem",value:function(e,t){var n=this._getTotalProgress(t);this.progress=n,e._onProgress(t),this.onProgressItem(e,t),this.onProgressAll(n),this._render()}},{key:"_onSuccessItem",value:function(e,t,n,i){e._onSuccess(t,n,i),this.onSuccessItem(e,t,n,i)}},{key:"_onCancelItem",value:function(e,t,n,i){e._onCancel(t,n,i),this.onCancelItem(e,t,n,i)}}]),e}(),Vk=function(){var e=function(){function e(t){(0,f.Z)(this,e),this.onFileSelected=new y.vpe,this.element=t}return(0,m.Z)(e,[{key:"getOptions",value:function(){return this.uploader.options}},{key:"getFilters",value:function(){return{}}},{key:"isEmptyAfterSelection",value:function(){return!!this.element.nativeElement.attributes.multiple}},{key:"onChange",value:function(){var e=this.element.nativeElement.files,t=this.getOptions(),n=this.getFilters();this.uploader.addToQueue(e,t,n),this.onFileSelected.emit(e),this.isEmptyAfterSelection()&&(this.element.nativeElement.value="")}}]),e}();return e.\u0275fac=function(t){return new(t||e)(y.Y36(y.SBq))},e.\u0275dir=y.lG2({type:e,selectors:[["","ng2FileSelect",""]],hostBindings:function(e,t){1&e&&y.NdJ("change",function(){return t.onChange()})},inputs:{uploader:"uploader"},outputs:{onFileSelected:"onFileSelected"}}),e}(),Qk=function(){var e=function e(){(0,f.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=y.oAB({type:e}),e.\u0275inj=y.cJS({imports:[[_.ez]]}),e}(),Xk=function(){function e(){}return Object.defineProperty(e.prototype,"child_process",{get:function(){return this._child_process||(this._child_process=window.require?window.require("child_process"):null),this._child_process},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isElectronApp",{get:function(){return!!window.navigator.userAgent.match(/Electron/)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"childProcess",{get:function(){return this.child_process?this.child_process:null},enumerable:!0,configurable:!0}),e}(),Kk=function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),$k=function(e){function t(){return e.call(this)||this}return Kk(t,e),t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=y.Yz7({token:t,factory:function(e){return t.\u0275fac(e)}}),t}(Xk),eT=function(){function e(){}return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=y.oAB({type:e}),e.\u0275inj=y.cJS({providers:[{provide:Xk,useClass:$k}]}),e}(),tT=function(){function e(){(0,f.Z)(this,e)}return(0,m.Z)(e,[{key:"electron",get:function(){return this._electron?this._electron:window&&window.require?(this._electron=window.require("electron"),this._electron):null}},{key:"isElectronApp",get:function(){return!!window.navigator.userAgent.match(/Electron/)}},{key:"isMacOS",get:function(){return this.isElectronApp&&"darwin"===process.platform}},{key:"isWindows",get:function(){return this.isElectronApp&&"win32"===process.platform}},{key:"isLinux",get:function(){return this.isElectronApp&&"linux"===process.platform}},{key:"isX86",get:function(){return this.isElectronApp&&"ia32"===process.arch}},{key:"isX64",get:function(){return this.isElectronApp&&"x64"===process.arch}},{key:"isArm",get:function(){return this.isElectronApp&&"arm"===process.arch}},{key:"desktopCapturer",get:function(){return this.electron?this.electron.desktopCapturer:null}},{key:"ipcRenderer",get:function(){return this.electron?this.electron.ipcRenderer:null}},{key:"remote",get:function(){return this.electron?this.electron.remote:null}},{key:"webFrame",get:function(){return this.electron?this.electron.webFrame:null}},{key:"clipboard",get:function(){return this.electron?this.electron.clipboard:null}},{key:"crashReporter",get:function(){return this.electron?this.electron.crashReporter:null}},{key:"process",get:function(){return this.remote?this.remote.process:null}},{key:"nativeImage",get:function(){return this.electron?this.electron.nativeImage:null}},{key:"screen",get:function(){return this.electron?this.remote.screen:null}},{key:"shell",get:function(){return this.electron?this.electron.shell:null}}]),e}(),nT=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(){return(0,f.Z)(this,n),t.call(this)}return n}(tT);return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=y.Yz7({token:e,factory:e.\u0275fac}),e}(),iT=function(){var e=function e(){(0,f.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=y.oAB({type:e}),e.\u0275inj=y.cJS({providers:[{provide:tT,useClass:nT}]}),e}(),rT=n(3574),oT=n(64646),aT=n(60131),sT=n(4499),lT=n(93487),cT=n(39887),uT=n(31927),dT=n(13426),hT=n(38575),pT=n(99583),fT=n(64233),mT=n(26575),gT=n(59803),vT=n(65890),yT=function e(t,n){(0,f.Z)(this,e),this.id=t,this.url=n},_T=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(e,i){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"imperative",a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;return(0,f.Z)(this,n),(r=t.call(this,e,i)).navigationTrigger=o,r.restoredState=a,r}return(0,m.Z)(n,[{key:"toString",value:function(){return"NavigationStart(id: ".concat(this.id,", url: '").concat(this.url,"')")}}]),n}(yT),bT=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(e,i,r){var o;return(0,f.Z)(this,n),(o=t.call(this,e,i)).urlAfterRedirects=r,o}return(0,m.Z)(n,[{key:"toString",value:function(){return"NavigationEnd(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"')")}}]),n}(yT),wT=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(e,i,r){var o;return(0,f.Z)(this,n),(o=t.call(this,e,i)).reason=r,o}return(0,m.Z)(n,[{key:"toString",value:function(){return"NavigationCancel(id: ".concat(this.id,", url: '").concat(this.url,"')")}}]),n}(yT),ST=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(e,i,r){var o;return(0,f.Z)(this,n),(o=t.call(this,e,i)).error=r,o}return(0,m.Z)(n,[{key:"toString",value:function(){return"NavigationError(id: ".concat(this.id,", url: '").concat(this.url,"', error: ").concat(this.error,")")}}]),n}(yT),xT=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(e,i,r,o){var a;return(0,f.Z)(this,n),(a=t.call(this,e,i)).urlAfterRedirects=r,a.state=o,a}return(0,m.Z)(n,[{key:"toString",value:function(){return"RoutesRecognized(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"', state: ").concat(this.state,")")}}]),n}(yT),CT=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(e,i,r,o){var a;return(0,f.Z)(this,n),(a=t.call(this,e,i)).urlAfterRedirects=r,a.state=o,a}return(0,m.Z)(n,[{key:"toString",value:function(){return"GuardsCheckStart(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"', state: ").concat(this.state,")")}}]),n}(yT),kT=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(e,i,r,o,a){var s;return(0,f.Z)(this,n),(s=t.call(this,e,i)).urlAfterRedirects=r,s.state=o,s.shouldActivate=a,s}return(0,m.Z)(n,[{key:"toString",value:function(){return"GuardsCheckEnd(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"', state: ").concat(this.state,", shouldActivate: ").concat(this.shouldActivate,")")}}]),n}(yT),TT=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(e,i,r,o){var a;return(0,f.Z)(this,n),(a=t.call(this,e,i)).urlAfterRedirects=r,a.state=o,a}return(0,m.Z)(n,[{key:"toString",value:function(){return"ResolveStart(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"', state: ").concat(this.state,")")}}]),n}(yT),AT=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(e,i,r,o){var a;return(0,f.Z)(this,n),(a=t.call(this,e,i)).urlAfterRedirects=r,a.state=o,a}return(0,m.Z)(n,[{key:"toString",value:function(){return"ResolveEnd(id: ".concat(this.id,", url: '").concat(this.url,"', urlAfterRedirects: '").concat(this.urlAfterRedirects,"', state: ").concat(this.state,")")}}]),n}(yT),ZT=function(){function e(t){(0,f.Z)(this,e),this.route=t}return(0,m.Z)(e,[{key:"toString",value:function(){return"RouteConfigLoadStart(path: ".concat(this.route.path,")")}}]),e}(),MT=function(){function e(t){(0,f.Z)(this,e),this.route=t}return(0,m.Z)(e,[{key:"toString",value:function(){return"RouteConfigLoadEnd(path: ".concat(this.route.path,")")}}]),e}(),OT=function(){function e(t){(0,f.Z)(this,e),this.snapshot=t}return(0,m.Z)(e,[{key:"toString",value:function(){return"ChildActivationStart(path: '".concat(this.snapshot.routeConfig&&this.snapshot.routeConfig.path||"","')")}}]),e}(),ET=function(){function e(t){(0,f.Z)(this,e),this.snapshot=t}return(0,m.Z)(e,[{key:"toString",value:function(){return"ChildActivationEnd(path: '".concat(this.snapshot.routeConfig&&this.snapshot.routeConfig.path||"","')")}}]),e}(),PT=function(){function e(t){(0,f.Z)(this,e),this.snapshot=t}return(0,m.Z)(e,[{key:"toString",value:function(){return"ActivationStart(path: '".concat(this.snapshot.routeConfig&&this.snapshot.routeConfig.path||"","')")}}]),e}(),IT=function(){function e(t){(0,f.Z)(this,e),this.snapshot=t}return(0,m.Z)(e,[{key:"toString",value:function(){return"ActivationEnd(path: '".concat(this.snapshot.routeConfig&&this.snapshot.routeConfig.path||"","')")}}]),e}(),qT=function(){function e(t,n,i){(0,f.Z)(this,e),this.routerEvent=t,this.position=n,this.anchor=i}return(0,m.Z)(e,[{key:"toString",value:function(){var e=this.position?"".concat(this.position[0],", ").concat(this.position[1]):null;return"Scroll(anchor: '".concat(this.anchor,"', position: '").concat(e,"')")}}]),e}(),NT="primary",DT=function(){function e(t){(0,f.Z)(this,e),this.params=t||{}}return(0,m.Z)(e,[{key:"has",value:function(e){return Object.prototype.hasOwnProperty.call(this.params,e)}},{key:"get",value:function(e){if(this.has(e)){var t=this.params[e];return Array.isArray(t)?t[0]:t}return null}},{key:"getAll",value:function(e){if(this.has(e)){var t=this.params[e];return Array.isArray(t)?t:[t]}return[]}},{key:"keys",get:function(){return Object.keys(this.params)}}]),e}();function RT(e){return new DT(e)}function LT(e){var t=Error("NavigationCancelingError: "+e);return t.ngNavigationCancelingError=!0,t}function FT(e,t,n){var i=n.path.split("/");if(i.length>e.length)return null;if("full"===n.pathMatch&&(t.hasChildren()||i.length0?e[e.length-1]:null}function HT(e,t){for(var n in e)e.hasOwnProperty(n)&&t(e[n],n)}function YT(e){return(0,y.CqO)(e)?e:(0,y.QGY)(e)?(0,xe.D)(Promise.resolve(e)):(0,Te.of)(e)}var JT={exact:function e(t,n,i){if(!tA(t.segments,n.segments))return!1;if(!XT(t.segments,n.segments,i))return!1;if(t.numberOfChildren!==n.numberOfChildren)return!1;for(var r in n.children){if(!t.children[r])return!1;if(!e(t.children[r],n.children[r],i))return!1}return!0},subset:VT},GT={exact:function(e,t){return BT(e,t)},subset:function(e,t){return Object.keys(t).length<=Object.keys(e).length&&Object.keys(t).every(function(n){return jT(e[n],t[n])})},ignored:function(){return!0}};function WT(e,t,n){return JT[n.paths](e.root,t.root,n.matrixParams)&>[n.queryParams](e.queryParams,t.queryParams)&&!("exact"===n.fragment&&e.fragment!==t.fragment)}function VT(e,t,n){return QT(e,t,t.segments,n)}function QT(e,t,n,i){if(e.segments.length>n.length){var r=e.segments.slice(0,n.length);return!!tA(r,n)&&!t.hasChildren()&&!!XT(r,n,i)}if(e.segments.length===n.length){if(!tA(e.segments,n))return!1;if(!XT(e.segments,n,i))return!1;for(var o in t.children){if(!e.children[o])return!1;if(!VT(e.children[o],t.children[o],i))return!1}return!0}var a=n.slice(0,e.segments.length),s=n.slice(e.segments.length);return!!tA(e.segments,a)&&!!XT(e.segments,a,i)&&!!e.children.primary&&QT(e.children.primary,t,s,i)}function XT(e,t,n){return t.every(function(t,i){return GT[n](e[i].parameters,t.parameters)})}var KT=function(){function e(t,n,i){(0,f.Z)(this,e),this.root=t,this.queryParams=n,this.fragment=i}return(0,m.Z)(e,[{key:"queryParamMap",get:function(){return this._queryParamMap||(this._queryParamMap=RT(this.queryParams)),this._queryParamMap}},{key:"toString",value:function(){return rA.serialize(this)}}]),e}(),$T=function(){function e(t,n){var i=this;(0,f.Z)(this,e),this.segments=t,this.children=n,this.parent=null,HT(n,function(e,t){return e.parent=i})}return(0,m.Z)(e,[{key:"hasChildren",value:function(){return this.numberOfChildren>0}},{key:"numberOfChildren",get:function(){return Object.keys(this.children).length}},{key:"toString",value:function(){return oA(this)}}]),e}(),eA=function(){function e(t,n){(0,f.Z)(this,e),this.path=t,this.parameters=n}return(0,m.Z)(e,[{key:"parameterMap",get:function(){return this._parameterMap||(this._parameterMap=RT(this.parameters)),this._parameterMap}},{key:"toString",value:function(){return hA(this)}}]),e}();function tA(e,t){return e.length===t.length&&e.every(function(e,n){return e.path===t[n].path})}var nA=function e(){(0,f.Z)(this,e)},iA=function(){function e(){(0,f.Z)(this,e)}return(0,m.Z)(e,[{key:"parse",value:function(e){var t=new vA(e);return new KT(t.parseRootSegment(),t.parseQueryParams(),t.parseFragment())}},{key:"serialize",value:function(e){var t,n,i="/".concat(aA(e.root,!0)),r=(t=e.queryParams,(n=Object.keys(t).map(function(e){var n=t[e];return Array.isArray(n)?n.map(function(t){return"".concat(lA(e),"=").concat(lA(t))}).join("&"):"".concat(lA(e),"=").concat(lA(n))}).filter(function(e){return!!e})).length?"?".concat(n.join("&")):""),o="string"==typeof e.fragment?"#".concat(function(e){return encodeURI(e)}(e.fragment)):"";return"".concat(i).concat(r).concat(o)}}]),e}(),rA=new iA;function oA(e){return e.segments.map(function(e){return hA(e)}).join("/")}function aA(e,t){if(!e.hasChildren())return oA(e);if(t){var n=e.children.primary?aA(e.children.primary,!1):"",i=[];return HT(e.children,function(e,t){t!==NT&&i.push("".concat(t,":").concat(aA(e,!1)))}),i.length>0?"".concat(n,"(").concat(i.join("//"),")"):n}var r=function(e,t){var n=[];return HT(e.children,function(e,i){i===NT&&(n=n.concat(t(e,i)))}),HT(e.children,function(e,i){i!==NT&&(n=n.concat(t(e,i)))}),n}(e,function(t,n){return n===NT?[aA(e.children.primary,!1)]:["".concat(n,":").concat(aA(t,!1))]});return 1===Object.keys(e.children).length&&null!=e.children.primary?"".concat(oA(e),"/").concat(r[0]):"".concat(oA(e),"/(").concat(r.join("//"),")")}function sA(e){return encodeURIComponent(e).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function lA(e){return sA(e).replace(/%3B/gi,";")}function cA(e){return sA(e).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function uA(e){return decodeURIComponent(e)}function dA(e){return uA(e.replace(/\+/g,"%20"))}function hA(e){return"".concat(cA(e.path)).concat((t=e.parameters,Object.keys(t).map(function(e){return";".concat(cA(e),"=").concat(cA(t[e]))}).join("")));var t}var pA=/^[^\/()?;=#]+/;function fA(e){var t=e.match(pA);return t?t[0]:""}var mA=/^[^=?&#]+/,gA=/^[^?&#]+/,vA=function(){function e(t){(0,f.Z)(this,e),this.url=t,this.remaining=t}return(0,m.Z)(e,[{key:"parseRootSegment",value:function(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new $T([],{}):new $T([],this.parseChildren())}},{key:"parseQueryParams",value:function(){var e={};if(this.consumeOptional("?"))do{this.parseQueryParam(e)}while(this.consumeOptional("&"));return e}},{key:"parseFragment",value:function(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}},{key:"parseChildren",value:function(){if(""===this.remaining)return{};this.consumeOptional("/");var e=[];for(this.peekStartsWith("(")||e.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),e.push(this.parseSegment());var t={};this.peekStartsWith("/(")&&(this.capture("/"),t=this.parseParens(!0));var n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(e.length>0||Object.keys(t).length>0)&&(n.primary=new $T(e,t)),n}},{key:"parseSegment",value:function(){var e=fA(this.remaining);if(""===e&&this.peekStartsWith(";"))throw new Error("Empty path url segment cannot have parameters: '".concat(this.remaining,"'."));return this.capture(e),new eA(uA(e),this.parseMatrixParams())}},{key:"parseMatrixParams",value:function(){for(var e={};this.consumeOptional(";");)this.parseParam(e);return e}},{key:"parseParam",value:function(e){var t=fA(this.remaining);if(t){this.capture(t);var n="";if(this.consumeOptional("=")){var i=fA(this.remaining);i&&this.capture(n=i)}e[uA(t)]=uA(n)}}},{key:"parseQueryParam",value:function(e){var t=function(e){var t=e.match(mA);return t?t[0]:""}(this.remaining);if(t){this.capture(t);var n="";if(this.consumeOptional("=")){var i=function(e){var t=e.match(gA);return t?t[0]:""}(this.remaining);i&&this.capture(n=i)}var r=dA(t),o=dA(n);if(e.hasOwnProperty(r)){var a=e[r];Array.isArray(a)||(e[r]=a=[a]),a.push(o)}else e[r]=o}}},{key:"parseParens",value:function(e){var t={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){var n=fA(this.remaining),i=this.remaining[n.length];if("/"!==i&&")"!==i&&";"!==i)throw new Error("Cannot parse url '".concat(this.url,"'"));var r=void 0;n.indexOf(":")>-1?(r=n.substr(0,n.indexOf(":")),this.capture(r),this.capture(":")):e&&(r=NT);var o=this.parseChildren();t[r]=1===Object.keys(o).length?o.primary:new $T([],o),this.consumeOptional("//")}return t}},{key:"peekStartsWith",value:function(e){return this.remaining.startsWith(e)}},{key:"consumeOptional",value:function(e){return!!this.peekStartsWith(e)&&(this.remaining=this.remaining.substring(e.length),!0)}},{key:"capture",value:function(e){if(!this.consumeOptional(e))throw new Error('Expected "'.concat(e,'".'))}}]),e}(),yA=function(){function e(t){(0,f.Z)(this,e),this._root=t}return(0,m.Z)(e,[{key:"root",get:function(){return this._root.value}},{key:"parent",value:function(e){var t=this.pathFromRoot(e);return t.length>1?t[t.length-2]:null}},{key:"children",value:function(e){var t=_A(e,this._root);return t?t.children.map(function(e){return e.value}):[]}},{key:"firstChild",value:function(e){var t=_A(e,this._root);return t&&t.children.length>0?t.children[0].value:null}},{key:"siblings",value:function(e){var t=bA(e,this._root);return t.length<2?[]:t[t.length-2].children.map(function(e){return e.value}).filter(function(t){return t!==e})}},{key:"pathFromRoot",value:function(e){return bA(e,this._root).map(function(e){return e.value})}}]),e}();function _A(e,t){if(e===t.value)return t;var n,i=(0,l.Z)(t.children);try{for(i.s();!(n=i.n()).done;){var r=_A(e,n.value);if(r)return r}}catch(o){i.e(o)}finally{i.f()}return null}function bA(e,t){if(e===t.value)return[t];var n,i=(0,l.Z)(t.children);try{for(i.s();!(n=i.n()).done;){var r=bA(e,n.value);if(r.length)return r.unshift(t),r}}catch(o){i.e(o)}finally{i.f()}return[]}var wA=function(){function e(t,n){(0,f.Z)(this,e),this.value=t,this.children=n}return(0,m.Z)(e,[{key:"toString",value:function(){return"TreeNode(".concat(this.value,")")}}]),e}();function SA(e){var t={};return e&&e.children.forEach(function(e){return t[e.value.outlet]=e}),t}var xA=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(e,i){var r;return(0,f.Z)(this,n),(r=t.call(this,e)).snapshot=i,OA((0,rT.Z)(r),e),r}return(0,m.Z)(n,[{key:"toString",value:function(){return this.snapshot.toString()}}]),n}(yA);function CA(e,t){var n=function(e,t){var n=new ZA([],{},{},"",{},NT,t,null,e.root,-1,{});return new MA("",new wA(n,[]))}(e,t),i=new Ce.X([new eA("",{})]),r=new Ce.X({}),o=new Ce.X({}),a=new Ce.X({}),s=new Ce.X(""),l=new kA(i,r,a,s,o,NT,t,n.root);return l.snapshot=n.root,new xA(new wA(l,[]),n)}var kA=function(){function e(t,n,i,r,o,a,s,l){(0,f.Z)(this,e),this.url=t,this.params=n,this.queryParams=i,this.fragment=r,this.data=o,this.outlet=a,this.component=s,this._futureSnapshot=l}return(0,m.Z)(e,[{key:"routeConfig",get:function(){return this._futureSnapshot.routeConfig}},{key:"root",get:function(){return this._routerState.root}},{key:"parent",get:function(){return this._routerState.parent(this)}},{key:"firstChild",get:function(){return this._routerState.firstChild(this)}},{key:"children",get:function(){return this._routerState.children(this)}},{key:"pathFromRoot",get:function(){return this._routerState.pathFromRoot(this)}},{key:"paramMap",get:function(){return this._paramMap||(this._paramMap=this.params.pipe((0,P.U)(function(e){return RT(e)}))),this._paramMap}},{key:"queryParamMap",get:function(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe((0,P.U)(function(e){return RT(e)}))),this._queryParamMap}},{key:"toString",value:function(){return this.snapshot?this.snapshot.toString():"Future(".concat(this._futureSnapshot,")")}}]),e}();function TA(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"emptyOnly",n=e.pathFromRoot,i=0;if("always"!==t)for(i=n.length-1;i>=1;){var r=n[i],o=n[i-1];if(r.routeConfig&&""===r.routeConfig.path)i--;else{if(o.component)break;i--}}return AA(n.slice(i))}function AA(e){return e.reduce(function(e,t){return{params:Object.assign(Object.assign({},e.params),t.params),data:Object.assign(Object.assign({},e.data),t.data),resolve:Object.assign(Object.assign({},e.resolve),t._resolvedData)}},{params:{},data:{},resolve:{}})}var ZA=function(){function e(t,n,i,r,o,a,s,l,c,u,d){(0,f.Z)(this,e),this.url=t,this.params=n,this.queryParams=i,this.fragment=r,this.data=o,this.outlet=a,this.component=s,this.routeConfig=l,this._urlSegment=c,this._lastPathIndex=u,this._resolve=d}return(0,m.Z)(e,[{key:"root",get:function(){return this._routerState.root}},{key:"parent",get:function(){return this._routerState.parent(this)}},{key:"firstChild",get:function(){return this._routerState.firstChild(this)}},{key:"children",get:function(){return this._routerState.children(this)}},{key:"pathFromRoot",get:function(){return this._routerState.pathFromRoot(this)}},{key:"paramMap",get:function(){return this._paramMap||(this._paramMap=RT(this.params)),this._paramMap}},{key:"queryParamMap",get:function(){return this._queryParamMap||(this._queryParamMap=RT(this.queryParams)),this._queryParamMap}},{key:"toString",value:function(){var e=this.url.map(function(e){return e.toString()}).join("/"),t=this.routeConfig?this.routeConfig.path:"";return"Route(url:'".concat(e,"', path:'").concat(t,"')")}}]),e}(),MA=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(e,i){var r;return(0,f.Z)(this,n),(r=t.call(this,i)).url=e,OA((0,rT.Z)(r),i),r}return(0,m.Z)(n,[{key:"toString",value:function(){return EA(this._root)}}]),n}(yA);function OA(e,t){t.value._routerState=e,t.children.forEach(function(t){return OA(e,t)})}function EA(e){var t=e.children.length>0?" { ".concat(e.children.map(EA).join(", ")," } "):"";return"".concat(e.value).concat(t)}function PA(e){if(e.snapshot){var t=e.snapshot,n=e._futureSnapshot;e.snapshot=n,BT(t.queryParams,n.queryParams)||e.queryParams.next(n.queryParams),t.fragment!==n.fragment&&e.fragment.next(n.fragment),BT(t.params,n.params)||e.params.next(n.params),function(e,t){if(e.length!==t.length)return!1;for(var n=0;nr;){if(o-=r,!(i=i.parent))throw new Error("Invalid number of '../'");r=i.segments.length}return new zA(i,!1,r-o)}(n.snapshot._urlSegment,n.snapshot._lastPathIndex+r,e.numberOfDoubleDots)}(o,t,e),s=a.processChildren?HA(a.segmentGroup,a.index,o.commands):UA(a.segmentGroup,a.index,o.commands);return FA(a.segmentGroup,s,t,i,r)}function RA(e){return"object"==typeof e&&null!=e&&!e.outlets&&!e.segmentPath}function LA(e){return"object"==typeof e&&null!=e&&e.outlets}function FA(e,t,n,i,r){var o={};return i&&HT(i,function(e,t){o[t]=Array.isArray(e)?e.map(function(e){return"".concat(e)}):"".concat(e)}),new KT(n.root===e?t:BA(n.root,e,t),o,r)}function BA(e,t,n){var i={};return HT(e.children,function(e,r){i[r]=e===t?n:BA(e,t,n)}),new $T(e.segments,i)}var jA=function(){function e(t,n,i){if((0,f.Z)(this,e),this.isAbsolute=t,this.numberOfDoubleDots=n,this.commands=i,t&&i.length>0&&RA(i[0]))throw new Error("Root segment cannot have matrix parameters");var r=i.find(LA);if(r&&r!==UT(i))throw new Error("{outlets:{}} has to be the last command")}return(0,m.Z)(e,[{key:"toRoot",value:function(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}]),e}(),zA=function e(t,n,i){(0,f.Z)(this,e),this.segmentGroup=t,this.processChildren=n,this.index=i};function UA(e,t,n){if(e||(e=new $T([],{})),0===e.segments.length&&e.hasChildren())return HA(e,t,n);var i=function(e,t,n){for(var i=0,r=t,o={match:!1,pathIndex:0,commandIndex:0};r=n.length)return o;var a=e.segments[r],s=n[i];if(LA(s))break;var l="".concat(s),c=i0&&void 0===l)break;if(l&&c&&"object"==typeof c&&void 0===c.outlets){if(!WA(l,c,a))return o;i+=2}else{if(!WA(l,{},a))return o;i++}r++}return{match:!0,pathIndex:r,commandIndex:i}}(e,t,n),r=n.slice(i.commandIndex);if(i.match&&i.pathIndex1&&void 0!==arguments[1]?arguments[1]:"",n=0;n0)?Object.assign({},cZ):{matched:!0,consumedSegments:[],lastChild:0,parameters:{},positionalParamSegments:{}};var r=(t.matcher||FT)(n,e,t);if(!r)return Object.assign({},cZ);var o={};HT(r.posParams,function(e,t){o[t]=e.path});var a=r.consumed.length>0?Object.assign(Object.assign({},o),r.consumed[r.consumed.length-1].parameters):o;return{matched:!0,consumedSegments:r.consumed,lastChild:r.consumed.length,parameters:a,positionalParamSegments:null!==(i=r.posParams)&&void 0!==i?i:{}}}function dZ(e,t,n,i){var r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"corrected";if(n.length>0&&fZ(e,n,i)){var o=new $T(t,pZ(e,t,i,new $T(n,e.children)));return o._sourceSegment=e,o._segmentIndexShift=t.length,{segmentGroup:o,slicedSegments:[]}}if(0===n.length&&mZ(e,n,i)){var a=new $T(e.segments,hZ(e,t,n,i,e.children,r));return a._sourceSegment=e,a._segmentIndexShift=t.length,{segmentGroup:a,slicedSegments:n}}var s=new $T(e.segments,e.children);return s._sourceSegment=e,s._segmentIndexShift=t.length,{segmentGroup:s,slicedSegments:n}}function hZ(e,t,n,i,r,o){var a,s={},c=(0,l.Z)(i);try{for(c.s();!(a=c.n()).done;){var u=a.value;if(gZ(e,n,u)&&!r[sZ(u)]){var d=new $T([],{});d._sourceSegment=e,d._segmentIndexShift="legacy"===o?e.segments.length:t.length,s[sZ(u)]=d}}}catch(h){c.e(h)}finally{c.f()}return Object.assign(Object.assign({},r),s)}function pZ(e,t,n,i){var r={};r.primary=i,i._sourceSegment=e,i._segmentIndexShift=t.length;var o,a=(0,l.Z)(n);try{for(a.s();!(o=a.n()).done;){var s=o.value;if(""===s.path&&sZ(s)!==NT){var c=new $T([],{});c._sourceSegment=e,c._segmentIndexShift=t.length,r[sZ(s)]=c}}}catch(u){a.e(u)}finally{a.f()}return r}function fZ(e,t,n){return n.some(function(n){return gZ(e,t,n)&&sZ(n)!==NT})}function mZ(e,t,n){return n.some(function(n){return gZ(e,t,n)})}function gZ(e,t,n){return(!(e.hasChildren()||t.length>0)||"full"!==n.pathMatch)&&""===n.path}function vZ(e,t,n,i){return!!(sZ(e)===i||i!==NT&&gZ(t,n,e))&&("**"===e.path||uZ(t,e,n).matched)}function yZ(e,t,n){return 0===t.length&&!e.children[n]}var _Z=function e(t){(0,f.Z)(this,e),this.segmentGroup=t||null},bZ=function e(t){(0,f.Z)(this,e),this.urlTree=t};function wZ(e){return new Z.y(function(t){return t.error(new _Z(e))})}function SZ(e){return new Z.y(function(t){return t.error(new bZ(e))})}function xZ(e){return new Z.y(function(t){return t.error(new Error("Only absolute redirects can have named outlets. redirectTo: '".concat(e,"'")))})}var CZ=function(){function e(t,n,i,r,o){(0,f.Z)(this,e),this.configLoader=n,this.urlSerializer=i,this.urlTree=r,this.config=o,this.allowRedirects=!0,this.ngModule=t.get(y.h0i)}return(0,m.Z)(e,[{key:"apply",value:function(){var e=this,t=dZ(this.urlTree.root,[],[],this.config).segmentGroup,n=new $T(t.segments,t.children);return this.expandSegmentGroup(this.ngModule,this.config,n,NT).pipe((0,P.U)(function(t){return e.createUrlTree(kZ(t),e.urlTree.queryParams,e.urlTree.fragment)})).pipe((0,dT.K)(function(t){if(t instanceof bZ)return e.allowRedirects=!1,e.match(t.urlTree);if(t instanceof _Z)throw e.noMatchError(t);throw t}))}},{key:"match",value:function(e){var t=this;return this.expandSegmentGroup(this.ngModule,this.config,e.root,NT).pipe((0,P.U)(function(n){return t.createUrlTree(kZ(n),e.queryParams,e.fragment)})).pipe((0,dT.K)(function(e){if(e instanceof _Z)throw t.noMatchError(e);throw e}))}},{key:"noMatchError",value:function(e){return new Error("Cannot match any routes. URL Segment: '".concat(e.segmentGroup,"'"))}},{key:"createUrlTree",value:function(e,t,n){var i=e.segments.length>0?new $T([],(0,a.Z)({},NT,e)):e;return new KT(i,t,n)}},{key:"expandSegmentGroup",value:function(e,t,n,i){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(e,t,n).pipe((0,P.U)(function(e){return new $T([],e)})):this.expandSegment(e,n,t,n.segments,i,!0)}},{key:"expandChildren",value:function(e,t,n){for(var i=this,r=[],o=0,a=Object.keys(n.children);o1||!i.children.primary)return xZ(e.redirectTo);i=i.children.primary}}},{key:"applyRedirectCommands",value:function(e,t,n){return this.applyRedirectCreatreUrlTree(t,this.urlSerializer.parse(t),e,n)}},{key:"applyRedirectCreatreUrlTree",value:function(e,t,n,i){var r=this.createSegmentGroup(e,t.root,n,i);return new KT(r,this.createQueryParams(t.queryParams,this.urlTree.queryParams),t.fragment)}},{key:"createQueryParams",value:function(e,t){var n={};return HT(e,function(e,i){if("string"==typeof e&&e.startsWith(":")){var r=e.substring(1);n[i]=t[r]}else n[i]=e}),n}},{key:"createSegmentGroup",value:function(e,t,n,i){var r=this,o=this.createSegments(e,t.segments,n,i),a={};return HT(t.children,function(t,o){a[o]=r.createSegmentGroup(e,t,n,i)}),new $T(o,a)}},{key:"createSegments",value:function(e,t,n,i){var r=this;return t.map(function(t){return t.path.startsWith(":")?r.findPosParam(e,t,i):r.findOrReturn(t,n)})}},{key:"findPosParam",value:function(e,t,n){var i=n[t.path.substring(1)];if(!i)throw new Error("Cannot redirect to '".concat(e,"'. Cannot find '").concat(t.path,"'."));return i}},{key:"findOrReturn",value:function(e,t){var n,i=0,r=(0,l.Z)(t);try{for(r.s();!(n=r.n()).done;){var o=n.value;if(o.path===e.path)return t.splice(i),o;i++}}catch(a){r.e(a)}finally{r.f()}return e}}]),e}();function kZ(e){for(var t={},n=0,i=Object.keys(e.children);n0||o.hasChildren())&&(t[r]=o)}return function(e){if(1===e.numberOfChildren&&e.children.primary){var t=e.children.primary;return new $T(e.segments.concat(t.segments),t.children)}return e}(new $T(e.segments,t))}var TZ=function e(t){(0,f.Z)(this,e),this.path=t,this.route=this.path[this.path.length-1]},AZ=function e(t,n){(0,f.Z)(this,e),this.component=t,this.route=n};function ZZ(e,t,n){var i=function(e){if(!e)return null;for(var t=e.parent;t;t=t.parent){var n=t.routeConfig;if(n&&n._loadedConfig)return n._loadedConfig}return null}(t);return(i?i.module.injector:n).get(e)}function MZ(e,t,n,i){var r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{canDeactivateChecks:[],canActivateChecks:[]},o=SA(t);return e.children.forEach(function(e){OZ(e,o[e.value.outlet],n,i.concat([e.value]),r),delete o[e.value.outlet]}),HT(o,function(e,t){return PZ(e,n.getContext(t),r)}),r}function OZ(e,t,n,i){var r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{canDeactivateChecks:[],canActivateChecks:[]},o=e.value,a=t?t.value:null,s=n?n.getContext(e.value.outlet):null;if(a&&o.routeConfig===a.routeConfig){var l=EZ(a,o,o.routeConfig.runGuardsAndResolvers);l?r.canActivateChecks.push(new TZ(i)):(o.data=a.data,o._resolvedData=a._resolvedData),MZ(e,t,o.component?s?s.children:null:n,i,r),l&&s&&s.outlet&&s.outlet.isActivated&&r.canDeactivateChecks.push(new AZ(s.outlet.component,a))}else a&&PZ(t,s,r),r.canActivateChecks.push(new TZ(i)),MZ(e,null,o.component?s?s.children:null:n,i,r);return r}function EZ(e,t,n){if("function"==typeof n)return n(e,t);switch(n){case"pathParamsChange":return!tA(e.url,t.url);case"pathParamsOrQueryParamsChange":return!tA(e.url,t.url)||!BT(e.queryParams,t.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!IA(e,t)||!BT(e.queryParams,t.queryParams);case"paramsChange":default:return!IA(e,t)}}function PZ(e,t,n){var i=SA(e),r=e.value;HT(i,function(e,i){PZ(e,r.component?t?t.children.getContext(i):null:t,n)}),n.canDeactivateChecks.push(new AZ(r.component&&t&&t.outlet&&t.outlet.isActivated?t.outlet.component:null,r))}var IZ=function e(){(0,f.Z)(this,e)};function qZ(e){return new Z.y(function(t){return t.error(e)})}var NZ=function(){function e(t,n,i,r,o,a){(0,f.Z)(this,e),this.rootComponentType=t,this.config=n,this.urlTree=i,this.url=r,this.paramsInheritanceStrategy=o,this.relativeLinkResolution=a}return(0,m.Z)(e,[{key:"recognize",value:function(){var e=dZ(this.urlTree.root,[],[],this.config.filter(function(e){return void 0===e.redirectTo}),this.relativeLinkResolution).segmentGroup,t=this.processSegmentGroup(this.config,e,NT);if(null===t)return null;var n=new ZA([],Object.freeze({}),Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,{},NT,this.rootComponentType,null,this.urlTree.root,-1,{}),i=new wA(n,t),r=new MA(this.url,i);return this.inheritParamsAndData(r._root),r}},{key:"inheritParamsAndData",value:function(e){var t=this,n=e.value,i=TA(n,this.paramsInheritanceStrategy);n.params=Object.freeze(i.params),n.data=Object.freeze(i.data),e.children.forEach(function(e){return t.inheritParamsAndData(e)})}},{key:"processSegmentGroup",value:function(e,t,n){return 0===t.segments.length&&t.hasChildren()?this.processChildren(e,t):this.processSegment(e,t,t.segments,n)}},{key:"processChildren",value:function(e,t){for(var n=[],i=0,r=Object.keys(t.children);i0?UT(n).parameters:{};r=new ZA(n,s,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,FZ(e),sZ(e),e.component,e,RZ(t),LZ(t)+n.length,BZ(e))}else{var l=uZ(t,e,n);if(!l.matched)return null;o=l.consumedSegments,a=n.slice(l.lastChild),r=new ZA(o,l.parameters,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,FZ(e),sZ(e),e.component,e,RZ(t),LZ(t)+o.length,BZ(e))}var c=function(e){return e.children?e.children:e.loadChildren?e._loadedConfig.routes:[]}(e),u=dZ(t,o,a,c.filter(function(e){return void 0===e.redirectTo}),this.relativeLinkResolution),d=u.segmentGroup,h=u.slicedSegments;if(0===h.length&&d.hasChildren()){var p=this.processChildren(c,d);return null===p?null:[new wA(r,p)]}if(0===c.length&&0===h.length)return[new wA(r,[])];var f=sZ(e)===i,m=this.processSegment(c,d,h,f?NT:i);return null===m?null:[new wA(r,m)]}}]),e}();function DZ(e){var t,n=[],i=new Set,r=(0,l.Z)(e);try{var o=function(){var e=t.value;if(!function(e){var t=e.value.routeConfig;return t&&""===t.path&&void 0===t.redirectTo}(e))return n.push(e),"continue";var r,o=n.find(function(t){return e.value.routeConfig===t.value.routeConfig});void 0!==o?((r=o.children).push.apply(r,(0,p.Z)(e.children)),i.add(o)):n.push(e)};for(r.s();!(t=r.n()).done;)o()}catch(d){r.e(d)}finally{r.f()}var a,s=(0,l.Z)(i);try{for(s.s();!(a=s.n()).done;){var c=a.value,u=DZ(c.children);n.push(new wA(c.value,u))}}catch(d){s.e(d)}finally{s.f()}return n.filter(function(e){return!i.has(e)})}function RZ(e){for(var t=e;t._sourceSegment;)t=t._sourceSegment;return t}function LZ(e){for(var t=e,n=t._segmentIndexShift?t._segmentIndexShift:0;t._sourceSegment;)n+=(t=t._sourceSegment)._segmentIndexShift?t._segmentIndexShift:0;return n-1}function FZ(e){return e.data||{}}function BZ(e){return e.resolve||{}}function jZ(e){return(0,N.w)(function(t){var n=e(t);return n?(0,xe.D)(n).pipe((0,P.U)(function(){return t})):(0,Te.of)(t)})}var zZ=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(){return(0,f.Z)(this,n),t.apply(this,arguments)}return n}(function(){function e(){(0,f.Z)(this,e)}return(0,m.Z)(e,[{key:"shouldDetach",value:function(e){return!1}},{key:"store",value:function(e,t){}},{key:"shouldAttach",value:function(e){return!1}},{key:"retrieve",value:function(e){return null}},{key:"shouldReuseRoute",value:function(e,t){return e.routeConfig===t.routeConfig}}]),e}()),UZ=new y.OlP("ROUTES"),HZ=function(){function e(t,n,i,r){(0,f.Z)(this,e),this.loader=t,this.compiler=n,this.onLoadStartListener=i,this.onLoadEndListener=r}return(0,m.Z)(e,[{key:"load",value:function(e,t){var n=this;if(t._loader$)return t._loader$;this.onLoadStartListener&&this.onLoadStartListener(t);var i=this.loadModuleFactory(t.loadChildren).pipe((0,P.U)(function(i){n.onLoadEndListener&&n.onLoadEndListener(t);var r=i.create(e);return new XA(zT(r.injector.get(UZ,void 0,y.XFs.Self|y.XFs.Optional)).map(aZ),r)}),(0,dT.K)(function(e){throw t._loader$=void 0,e}));return t._loader$=new cT.c(i,function(){return new C.xQ}).pipe((0,mT.x)()),t._loader$}},{key:"loadModuleFactory",value:function(e){var t=this;return"string"==typeof e?(0,xe.D)(this.loader.load(e)):YT(e()).pipe((0,zt.zg)(function(e){return e instanceof y.YKP?(0,Te.of)(e):(0,xe.D)(t.compiler.compileModuleAsync(e))}))}}]),e}(),YZ=function e(){(0,f.Z)(this,e),this.outlet=null,this.route=null,this.resolver=null,this.children=new JZ,this.attachRef=null},JZ=function(){function e(){(0,f.Z)(this,e),this.contexts=new Map}return(0,m.Z)(e,[{key:"onChildOutletCreated",value:function(e,t){var n=this.getOrCreateContext(e);n.outlet=t,this.contexts.set(e,n)}},{key:"onChildOutletDestroyed",value:function(e){var t=this.getContext(e);t&&(t.outlet=null)}},{key:"onOutletDeactivated",value:function(){var e=this.contexts;return this.contexts=new Map,e}},{key:"onOutletReAttached",value:function(e){this.contexts=e}},{key:"getOrCreateContext",value:function(e){var t=this.getContext(e);return t||(t=new YZ,this.contexts.set(e,t)),t}},{key:"getContext",value:function(e){return this.contexts.get(e)||null}}]),e}(),GZ=function(){function e(){(0,f.Z)(this,e)}return(0,m.Z)(e,[{key:"shouldProcessUrl",value:function(e){return!0}},{key:"extract",value:function(e){return e}},{key:"merge",value:function(e,t){return e}}]),e}();function WZ(e){throw e}function VZ(e,t,n){return t.parse("/")}function QZ(e,t){return(0,Te.of)(null)}var XZ={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},KZ={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"},$Z=function(){var e=function(){function e(t,n,i,r,o,a,s,l){var c=this;(0,f.Z)(this,e),this.rootComponentType=t,this.urlSerializer=n,this.rootContexts=i,this.location=r,this.config=l,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.disposed=!1,this.lastLocationChangeInfo=null,this.navigationId=0,this.currentPageId=0,this.isNgZoneEnabled=!1,this.events=new C.xQ,this.errorHandler=WZ,this.malformedUriErrorHandler=VZ,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:QZ,afterPreactivation:QZ},this.urlHandlingStrategy=new GZ,this.routeReuseStrategy=new zZ,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="corrected",this.canceledNavigationResolution="replace",this.ngModule=o.get(y.h0i),this.console=o.get(y.c2e);var u=o.get(y.R0b);this.isNgZoneEnabled=u instanceof y.R0b&&y.R0b.isInAngularZone(),this.resetConfig(l),this.currentUrlTree=new KT(new $T([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new HZ(a,s,function(e){return c.triggerEvent(new ZT(e))},function(e){return c.triggerEvent(new MT(e))}),this.routerState=CA(this.currentUrlTree,this.rootComponentType),this.transitions=new Ce.X({id:0,targetPageId:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}return(0,m.Z)(e,[{key:"browserPageId",get:function(){var e;return null===(e=this.location.getState())||void 0===e?void 0:e.\u0275routerPageId}},{key:"setupNavigations",value:function(e){var t=this,n=this.events;return e.pipe((0,pt.h)(function(e){return 0!==e.id}),(0,P.U)(function(e){return Object.assign(Object.assign({},e),{extractedUrl:t.urlHandlingStrategy.extract(e.rawUrl)})}),(0,N.w)(function(e){var i,r,o,a=!1,s=!1;return(0,Te.of)(e).pipe((0,q.b)(function(e){t.currentNavigation={id:e.id,initialUrl:e.currentRawUrl,extractedUrl:e.extractedUrl,trigger:e.source,extras:e.extras,previousNavigation:t.lastSuccessfulNavigation?Object.assign(Object.assign({},t.lastSuccessfulNavigation),{previousNavigation:null}):null}}),(0,N.w)(function(e){var i,r,o,a,s=!t.navigated||e.extractedUrl.toString()!==t.browserUrlTree.toString();if(("reload"===t.onSameUrlNavigation||s)&&t.urlHandlingStrategy.shouldProcessUrl(e.rawUrl))return(0,Te.of)(e).pipe((0,N.w)(function(e){var i=t.transitions.getValue();return n.next(new _T(e.id,t.serializeUrl(e.extractedUrl),e.source,e.restoredState)),i!==t.transitions.getValue()?lT.E:Promise.resolve(e)}),(i=t.ngModule.injector,r=t.configLoader,o=t.urlSerializer,a=t.config,(0,N.w)(function(e){return function(e,t,n,i,r){return new CZ(e,t,n,i,r).apply()}(i,r,o,e.extractedUrl,a).pipe((0,P.U)(function(t){return Object.assign(Object.assign({},e),{urlAfterRedirects:t})}))})),(0,q.b)(function(e){t.currentNavigation=Object.assign(Object.assign({},t.currentNavigation),{finalUrl:e.urlAfterRedirects})}),function(e,n,i,r,o){return(0,zt.zg)(function(i){return function(e,t,n,i){var r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"emptyOnly",o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"legacy";try{var a=new NZ(e,t,n,i,r,o).recognize();return null===a?qZ(new IZ):(0,Te.of)(a)}catch(s){return qZ(s)}}(e,n,i.urlAfterRedirects,(a=i.urlAfterRedirects,t.serializeUrl(a)),r,o).pipe((0,P.U)(function(e){return Object.assign(Object.assign({},i),{targetSnapshot:e})}));var a})}(t.rootComponentType,t.config,0,t.paramsInheritanceStrategy,t.relativeLinkResolution),(0,q.b)(function(e){"eager"===t.urlUpdateStrategy&&(e.extras.skipLocationChange||t.setBrowserUrl(e.urlAfterRedirects,e),t.browserUrlTree=e.urlAfterRedirects);var i=new xT(e.id,t.serializeUrl(e.extractedUrl),t.serializeUrl(e.urlAfterRedirects),e.targetSnapshot);n.next(i)}));if(s&&t.rawUrlTree&&t.urlHandlingStrategy.shouldProcessUrl(t.rawUrlTree)){var l=e.extractedUrl,c=e.source,u=e.restoredState,d=e.extras,h=new _T(e.id,t.serializeUrl(l),c,u);n.next(h);var p=CA(l,t.rootComponentType).snapshot;return(0,Te.of)(Object.assign(Object.assign({},e),{targetSnapshot:p,urlAfterRedirects:l,extras:Object.assign(Object.assign({},d),{skipLocationChange:!1,replaceUrl:!1})}))}return t.rawUrlTree=e.rawUrl,t.browserUrlTree=e.urlAfterRedirects,e.resolve(null),lT.E}),jZ(function(e){var n=e.extras;return t.hooks.beforePreactivation(e.targetSnapshot,{navigationId:e.id,appliedUrlTree:e.extractedUrl,rawUrlTree:e.rawUrl,skipLocationChange:!!n.skipLocationChange,replaceUrl:!!n.replaceUrl})}),(0,q.b)(function(e){var n=new CT(e.id,t.serializeUrl(e.extractedUrl),t.serializeUrl(e.urlAfterRedirects),e.targetSnapshot);t.triggerEvent(n)}),(0,P.U)(function(e){return Object.assign(Object.assign({},e),{guards:(n=e.targetSnapshot,i=e.currentSnapshot,r=t.rootContexts,o=n._root,MZ(o,i?i._root:null,r,[o.value]))});var n,i,r,o}),function(e,t){return(0,zt.zg)(function(n){var i=n.targetSnapshot,r=n.currentSnapshot,o=n.guards,a=o.canActivateChecks,s=o.canDeactivateChecks;return 0===s.length&&0===a.length?(0,Te.of)(Object.assign(Object.assign({},n),{guardsResult:!0})):function(e,t,n,i){return(0,xe.D)(e).pipe((0,zt.zg)(function(e){return function(e,t,n,i,r){var o=t&&t.routeConfig?t.routeConfig.canDeactivate:null;if(!o||0===o.length)return(0,Te.of)(!0);var a=o.map(function(o){var a,s=ZZ(o,t,r);if(function(e){return e&&KA(e.canDeactivate)}(s))a=YT(s.canDeactivate(e,t,n,i));else{if(!KA(s))throw new Error("Invalid CanDeactivate guard");a=YT(s(e,t,n,i))}return a.pipe((0,fT.P)())});return(0,Te.of)(a).pipe(tZ())}(e.component,e.route,n,t,i)}),(0,fT.P)(function(e){return!0!==e},!0))}(s,i,r,e).pipe((0,zt.zg)(function(n){return n&&"boolean"==typeof n?function(e,t,n,i){return(0,xe.D)(t).pipe((0,hT.b)(function(t){return(0,aT.z)(function(e,t){return null!==e&&t&&t(new OT(e)),(0,Te.of)(!0)}(t.route.parent,i),function(e,t){return null!==e&&t&&t(new PT(e)),(0,Te.of)(!0)}(t.route,i),function(e,t,n){var i=t[t.length-1],r=t.slice(0,t.length-1).reverse().map(function(e){return function(e){var t=e.routeConfig?e.routeConfig.canActivateChild:null;return t&&0!==t.length?{node:e,guards:t}:null}(e)}).filter(function(e){return null!==e}).map(function(t){return(0,sT.P)(function(){var r=t.guards.map(function(r){var o,a=ZZ(r,t.node,n);if(function(e){return e&&KA(e.canActivateChild)}(a))o=YT(a.canActivateChild(i,e));else{if(!KA(a))throw new Error("Invalid CanActivateChild guard");o=YT(a(i,e))}return o.pipe((0,fT.P)())});return(0,Te.of)(r).pipe(tZ())})});return(0,Te.of)(r).pipe(tZ())}(e,t.path,n),function(e,t,n){var i=t.routeConfig?t.routeConfig.canActivate:null;if(!i||0===i.length)return(0,Te.of)(!0);var r=i.map(function(i){return(0,sT.P)(function(){var r,o=ZZ(i,t,n);if(function(e){return e&&KA(e.canActivate)}(o))r=YT(o.canActivate(t,e));else{if(!KA(o))throw new Error("Invalid CanActivate guard");r=YT(o(t,e))}return r.pipe((0,fT.P)())})});return(0,Te.of)(r).pipe(tZ())}(e,t.route,n))}),(0,fT.P)(function(e){return!0!==e},!0))}(i,a,e,t):(0,Te.of)(n)}),(0,P.U)(function(e){return Object.assign(Object.assign({},n),{guardsResult:e})}))})}(t.ngModule.injector,function(e){return t.triggerEvent(e)}),(0,q.b)(function(e){if($A(e.guardsResult)){var n=LT('Redirecting to "'.concat(t.serializeUrl(e.guardsResult),'"'));throw n.url=e.guardsResult,n}var i=new kT(e.id,t.serializeUrl(e.extractedUrl),t.serializeUrl(e.urlAfterRedirects),e.targetSnapshot,!!e.guardsResult);t.triggerEvent(i)}),(0,pt.h)(function(e){return!!e.guardsResult||(t.restoreHistory(e),t.cancelNavigationTransition(e,""),!1)}),jZ(function(e){if(e.guards.canActivateChecks.length)return(0,Te.of)(e).pipe((0,q.b)(function(e){var n=new TT(e.id,t.serializeUrl(e.extractedUrl),t.serializeUrl(e.urlAfterRedirects),e.targetSnapshot);t.triggerEvent(n)}),(0,N.w)(function(e){var n,i,r=!1;return(0,Te.of)(e).pipe((n=t.paramsInheritanceStrategy,i=t.ngModule.injector,(0,zt.zg)(function(e){var t=e.targetSnapshot,r=e.guards.canActivateChecks;if(!r.length)return(0,Te.of)(e);var o=0;return(0,xe.D)(r).pipe((0,hT.b)(function(e){return function(e,t,n,i){return function(e,t,n,i){var r=Object.keys(e);if(0===r.length)return(0,Te.of)({});var o={};return(0,xe.D)(r).pipe((0,zt.zg)(function(r){return function(e,t,n,i){var r=ZZ(e,t,i);return YT(r.resolve?r.resolve(t,n):r(t,n))}(e[r],t,n,i).pipe((0,q.b)(function(e){o[r]=e}))}),(0,Ht.h)(1),(0,zt.zg)(function(){return Object.keys(o).length===r.length?(0,Te.of)(o):lT.E}))}(e._resolve,e,t,i).pipe((0,P.U)(function(t){return e._resolvedData=t,e.data=Object.assign(Object.assign({},e.data),TA(e,n).resolve),null}))}(e.route,t,n,i)}),(0,q.b)(function(){return o++}),(0,Ht.h)(1),(0,zt.zg)(function(t){return o===r.length?(0,Te.of)(e):lT.E}))})),(0,q.b)({next:function(){return r=!0},complete:function(){r||(t.restoreHistory(e),t.cancelNavigationTransition(e,"At least one route resolver didn't emit any value."))}}))}),(0,q.b)(function(e){var n=new AT(e.id,t.serializeUrl(e.extractedUrl),t.serializeUrl(e.urlAfterRedirects),e.targetSnapshot);t.triggerEvent(n)}))}),jZ(function(e){var n=e.extras;return t.hooks.afterPreactivation(e.targetSnapshot,{navigationId:e.id,appliedUrlTree:e.extractedUrl,rawUrlTree:e.rawUrl,skipLocationChange:!!n.skipLocationChange,replaceUrl:!!n.replaceUrl})}),(0,P.U)(function(e){var n=function(e,t,n){var i=qA(e,t._root,n?n._root:void 0);return new xA(i,t)}(t.routeReuseStrategy,e.targetSnapshot,e.currentRouterState);return Object.assign(Object.assign({},e),{targetRouterState:n})}),(0,q.b)(function(e){t.currentUrlTree=e.urlAfterRedirects,t.rawUrlTree=t.urlHandlingStrategy.merge(t.currentUrlTree,e.rawUrl),t.routerState=e.targetRouterState,"deferred"===t.urlUpdateStrategy&&(e.extras.skipLocationChange||t.setBrowserUrl(t.rawUrlTree,e),t.browserUrlTree=e.urlAfterRedirects)}),(i=t.rootContexts,r=t.routeReuseStrategy,o=function(e){return t.triggerEvent(e)},(0,P.U)(function(e){return new VA(r,e.targetRouterState,e.currentRouterState,o).activate(i),e})),(0,q.b)({next:function(){a=!0},complete:function(){a=!0}}),(0,gT.x)(function(){if(!a&&!s){var n="Navigation ID ".concat(e.id," is not equal to the current navigation id ").concat(t.navigationId);"replace"===t.canceledNavigationResolution?(t.restoreHistory(e),t.cancelNavigationTransition(e,n)):t.cancelNavigationTransition(e,n)}t.currentNavigation=null}),(0,dT.K)(function(i){if(s=!0,(l=i)&&l.ngNavigationCancelingError){var r=$A(i.url);r||(t.navigated=!0,t.restoreHistory(e,!0));var o=new wT(e.id,t.serializeUrl(e.extractedUrl),i.message);n.next(o),r?setTimeout(function(){var n=t.urlHandlingStrategy.merge(i.url,t.rawUrlTree);t.scheduleNavigation(n,"imperative",null,{skipLocationChange:e.extras.skipLocationChange,replaceUrl:"eager"===t.urlUpdateStrategy},{resolve:e.resolve,reject:e.reject,promise:e.promise})},0):e.resolve(!1)}else{t.restoreHistory(e,!0);var a=new ST(e.id,t.serializeUrl(e.extractedUrl),i);n.next(a);try{e.resolve(t.errorHandler(i))}catch(c){e.reject(c)}}var l;return lT.E}))}))}},{key:"resetRootComponentType",value:function(e){this.rootComponentType=e,this.routerState.root.component=this.rootComponentType}},{key:"getTransition",value:function(){var e=this.transitions.value;return e.urlAfterRedirects=this.browserUrlTree,e}},{key:"setTransition",value:function(e){this.transitions.next(Object.assign(Object.assign({},this.getTransition()),e))}},{key:"initialNavigation",value:function(){this.setUpLocationChangeListener(),0===this.navigationId&&this.navigateByUrl(this.location.path(!0),{replaceUrl:!0})}},{key:"setUpLocationChangeListener",value:function(){var e=this;this.locationSubscription||(this.locationSubscription=this.location.subscribe(function(t){var n=e.extractLocationChangeInfoFromEvent(t);e.shouldScheduleNavigation(e.lastLocationChangeInfo,n)&&setTimeout(function(){var t=n.source,i=n.state,r=n.urlTree,o={replaceUrl:!0};if(i){var a=Object.assign({},i);delete a.navigationId,delete a.\u0275routerPageId,0!==Object.keys(a).length&&(o.state=a)}e.scheduleNavigation(r,t,i,o)},0),e.lastLocationChangeInfo=n}))}},{key:"extractLocationChangeInfoFromEvent",value:function(e){var t;return{source:"popstate"===e.type?"popstate":"hashchange",urlTree:this.parseUrl(e.url),state:(null===(t=e.state)||void 0===t?void 0:t.navigationId)?e.state:null,transitionId:this.getTransition().id}}},{key:"shouldScheduleNavigation",value:function(e,t){if(!e)return!0;var n=t.urlTree.toString()===e.urlTree.toString();return!(t.transitionId===e.transitionId&&n&&("hashchange"===t.source&&"popstate"===e.source||"popstate"===t.source&&"hashchange"===e.source))}},{key:"url",get:function(){return this.serializeUrl(this.currentUrlTree)}},{key:"getCurrentNavigation",value:function(){return this.currentNavigation}},{key:"triggerEvent",value:function(e){this.events.next(e)}},{key:"resetConfig",value:function(e){iZ(e),this.config=e.map(aZ),this.navigated=!1,this.lastSuccessfulId=-1}},{key:"ngOnDestroy",value:function(){this.dispose()}},{key:"dispose",value:function(){this.transitions.complete(),this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=void 0),this.disposed=!0}},{key:"createUrlTree",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.relativeTo,i=t.queryParams,r=t.fragment,o=t.queryParamsHandling,a=t.preserveFragment,s=n||this.routerState.root,l=a?this.currentUrlTree.fragment:r,c=null;switch(o){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)),DA(s,this.currentUrlTree,e,c,null!=l?l:null)}},{key:"navigateByUrl",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{skipLocationChange:!1},n=$A(e)?e:this.parseUrl(e),i=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(i,"imperative",null,t)}},{key:"navigate",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{skipLocationChange:!1};return eM(e),this.navigateByUrl(this.createUrlTree(e,t),t)}},{key:"serializeUrl",value:function(e){return this.urlSerializer.serialize(e)}},{key:"parseUrl",value:function(e){var t;try{t=this.urlSerializer.parse(e)}catch(n){t=this.malformedUriErrorHandler(n,this.urlSerializer,e)}return t}},{key:"isActive",value:function(e,t){var n;if(n=!0===t?Object.assign({},XZ):!1===t?Object.assign({},KZ):t,$A(e))return WT(this.currentUrlTree,e,n);var i=this.parseUrl(e);return WT(this.currentUrlTree,i,n)}},{key:"removeEmptyProps",value:function(e){return Object.keys(e).reduce(function(t,n){var i=e[n];return null!=i&&(t[n]=i),t},{})}},{key:"processNavigations",value:function(){var e=this;this.navigations.subscribe(function(t){e.navigated=!0,e.lastSuccessfulId=t.id,e.currentPageId=t.targetPageId,e.events.next(new bT(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(e.currentUrlTree))),e.lastSuccessfulNavigation=e.currentNavigation,t.resolve(!0)},function(t){e.console.warn("Unhandled Navigation Error: ")})}},{key:"scheduleNavigation",value:function(e,t,n,i,r){var o,a;if(this.disposed)return Promise.resolve(!1);var s,l,c,u=this.getTransition(),d="imperative"!==t&&"imperative"===(null==u?void 0:u.source),h=(this.lastSuccessfulId===u.id||this.currentNavigation?u.rawUrl:u.urlAfterRedirects).toString()===e.toString();if(d&&h)return Promise.resolve(!0);r?(s=r.resolve,l=r.reject,c=r.promise):c=new Promise(function(e,t){s=e,l=t});var p,f=++this.navigationId;return"computed"===this.canceledNavigationResolution?(0===this.currentPageId&&(n=this.location.getState()),p=n&&n.\u0275routerPageId?n.\u0275routerPageId:i.replaceUrl||i.skipLocationChange?null!==(o=this.browserPageId)&&void 0!==o?o:0:(null!==(a=this.browserPageId)&&void 0!==a?a:0)+1):p=0,this.setTransition({id:f,targetPageId:p,source:t,restoredState:n,currentUrlTree:this.currentUrlTree,currentRawUrl:this.rawUrlTree,rawUrl:e,extras:i,resolve:s,reject:l,promise:c,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),c.catch(function(e){return Promise.reject(e)})}},{key:"setBrowserUrl",value:function(e,t){var n=this.urlSerializer.serialize(e),i=Object.assign(Object.assign({},t.extras.state),this.generateNgRouterState(t.id,t.targetPageId));this.location.isCurrentPathEqualTo(n)||t.extras.replaceUrl?this.location.replaceState(n,"",i):this.location.go(n,"",i)}},{key:"restoreHistory",value:function(e){var t,n,i=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if("computed"===this.canceledNavigationResolution){var r=this.currentPageId-e.targetPageId,o="popstate"===e.source||"eager"===this.urlUpdateStrategy||this.currentUrlTree===(null===(t=this.currentNavigation)||void 0===t?void 0:t.finalUrl);o&&0!==r?this.location.historyGo(r):this.currentUrlTree===(null===(n=this.currentNavigation)||void 0===n?void 0:n.finalUrl)&&0===r&&(this.resetState(e),this.browserUrlTree=e.currentUrlTree,this.resetUrlToCurrentUrlTree())}else"replace"===this.canceledNavigationResolution&&(i&&this.resetState(e),this.resetUrlToCurrentUrlTree())}},{key:"resetState",value:function(e){this.routerState=e.currentRouterState,this.currentUrlTree=e.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,e.rawUrl)}},{key:"resetUrlToCurrentUrlTree",value:function(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}},{key:"cancelNavigationTransition",value:function(e,t){var n=new wT(e.id,this.serializeUrl(e.extractedUrl),t);this.triggerEvent(n),e.resolve(!1)}},{key:"generateNgRouterState",value:function(e,t){return"computed"===this.canceledNavigationResolution?{navigationId:e,"\u0275routerPageId":t}:{navigationId:e}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(y.LFG(y.DyG),y.LFG(nA),y.LFG(JZ),y.LFG(_.Ye),y.LFG(y.zs3),y.LFG(y.v3s),y.LFG(y.Sil),y.LFG(void 0))},e.\u0275prov=y.Yz7({token:e,factory:e.\u0275fac}),e}();function eM(e){for(var t=0;t2&&void 0!==arguments[2]?arguments[2]:{};(0,f.Z)(this,e),this.router=t,this.viewportScroller=n,this.options=i,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},i.scrollPositionRestoration=i.scrollPositionRestoration||"disabled",i.anchorScrolling=i.anchorScrolling||"disabled"}return(0,m.Z)(e,[{key:"init",value:function(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}},{key:"createScrollEvents",value:function(){var e=this;return this.router.events.subscribe(function(t){t instanceof _T?(e.store[e.lastId]=e.viewportScroller.getScrollPosition(),e.lastSource=t.navigationTrigger,e.restoredId=t.restoredState?t.restoredState.navigationId:0):t instanceof bT&&(e.lastId=t.id,e.scheduleScrollEvent(t,e.router.parseUrl(t.urlAfterRedirects).fragment))})}},{key:"consumeScrollEvents",value:function(){var e=this;return this.router.events.subscribe(function(t){t instanceof qT&&(t.position?"top"===e.options.scrollPositionRestoration?e.viewportScroller.scrollToPosition([0,0]):"enabled"===e.options.scrollPositionRestoration&&e.viewportScroller.scrollToPosition(t.position):t.anchor&&"enabled"===e.options.anchorScrolling?e.viewportScroller.scrollToAnchor(t.anchor):"disabled"!==e.options.scrollPositionRestoration&&e.viewportScroller.scrollToPosition([0,0]))})}},{key:"scheduleScrollEvent",value:function(e,t){this.router.triggerEvent(new qT(e,"popstate"===this.lastSource?this.store[this.restoredId]:null,t))}},{key:"ngOnDestroy",value:function(){this.routerEventsSubscription&&this.routerEventsSubscription.unsubscribe(),this.scrollEventsSubscription&&this.scrollEventsSubscription.unsubscribe()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(y.LFG($Z),y.LFG(_.EM),y.LFG(void 0))},e.\u0275prov=y.Yz7({token:e,factory:e.\u0275fac}),e}(),dM=new y.OlP("ROUTER_CONFIGURATION"),hM=new y.OlP("ROUTER_FORROOT_GUARD"),pM=[_.Ye,{provide:nA,useClass:iA},{provide:$Z,useFactory:function(e,t,n,i,r,o,a){var s=arguments.length>7&&void 0!==arguments[7]?arguments[7]:{},l=arguments.length>8?arguments[8]:void 0,c=arguments.length>9?arguments[9]:void 0,u=new $Z(null,e,t,n,i,r,o,zT(a));return l&&(u.urlHandlingStrategy=l),c&&(u.routeReuseStrategy=c),bM(s,u),s.enableTracing&&u.events.subscribe(function(e){var t,n;null===(t=console.group)||void 0===t||t.call(console,"Router Event: ".concat(e.constructor.name)),console.log(e.toString()),console.log(e),null===(n=console.groupEnd)||void 0===n||n.call(console)}),u},deps:[nA,JZ,_.Ye,y.zs3,y.v3s,y.Sil,UZ,dM,[function e(){(0,f.Z)(this,e)},new y.FiY],[function e(){(0,f.Z)(this,e)},new y.FiY]]},JZ,{provide:kA,useFactory:function(e){return e.routerState.root},deps:[$Z]},{provide:y.v3s,useClass:y.EAV},cM,lM,sM,{provide:dM,useValue:{enableTracing:!1}}];function fM(){return new y.PXZ("Router",$Z)}var mM=function(){var e=function(){function e(t,n){(0,f.Z)(this,e)}return(0,m.Z)(e,null,[{key:"forRoot",value:function(t,n){return{ngModule:e,providers:[pM,_M(t),{provide:hM,useFactory:yM,deps:[[$Z,new y.FiY,new y.tp0]]},{provide:dM,useValue:n||{}},{provide:_.S$,useFactory:vM,deps:[_.lw,[new y.tBr(_.mr),new y.FiY],dM]},{provide:uM,useFactory:gM,deps:[$Z,_.EM,dM]},{provide:aM,useExisting:n&&n.preloadingStrategy?n.preloadingStrategy:lM},{provide:y.PXZ,multi:!0,useFactory:fM},[wM,{provide:y.ip1,multi:!0,useFactory:SM,deps:[wM]},{provide:CM,useFactory:xM,deps:[wM]},{provide:y.tb,multi:!0,useExisting:CM}]]}}},{key:"forChild",value:function(t){return{ngModule:e,providers:[_M(t)]}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(y.LFG(hM,8),y.LFG($Z,8))},e.\u0275mod=y.oAB({type:e}),e.\u0275inj=y.cJS({}),e}();function gM(e,t,n){return n.scrollOffset&&t.setOffset(n.scrollOffset),new uM(e,t,n)}function vM(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return n.useHash?new _.Do(e,t):new _.b0(e,t)}function yM(e){return"guarded"}function _M(e){return[{provide:y.deG,multi:!0,useValue:e},{provide:UZ,multi:!0,useValue:e}]}function bM(e,t){e.errorHandler&&(t.errorHandler=e.errorHandler),e.malformedUriErrorHandler&&(t.malformedUriErrorHandler=e.malformedUriErrorHandler),e.onSameUrlNavigation&&(t.onSameUrlNavigation=e.onSameUrlNavigation),e.paramsInheritanceStrategy&&(t.paramsInheritanceStrategy=e.paramsInheritanceStrategy),e.relativeLinkResolution&&(t.relativeLinkResolution=e.relativeLinkResolution),e.urlUpdateStrategy&&(t.urlUpdateStrategy=e.urlUpdateStrategy)}var wM=function(){var e=function(){function e(t){(0,f.Z)(this,e),this.injector=t,this.initNavigation=!1,this.destroyed=!1,this.resultOfPreactivationDone=new C.xQ}return(0,m.Z)(e,[{key:"appInitializer",value:function(){var e=this;return this.injector.get(_.V_,Promise.resolve(null)).then(function(){if(e.destroyed)return Promise.resolve(!0);var t=null,n=new Promise(function(e){return t=e}),i=e.injector.get($Z),r=e.injector.get(dM);return"disabled"===r.initialNavigation?(i.setUpLocationChangeListener(),t(!0)):"enabled"===r.initialNavigation||"enabledBlocking"===r.initialNavigation?(i.hooks.afterPreactivation=function(){return e.initNavigation?(0,Te.of)(null):(e.initNavigation=!0,t(!0),e.resultOfPreactivationDone)},i.initialNavigation()):t(!0),n})}},{key:"bootstrapListener",value:function(e){var t=this.injector.get(dM),n=this.injector.get(cM),i=this.injector.get(uM),r=this.injector.get($Z),o=this.injector.get(y.z2F);e===o.components[0]&&("enabledNonBlocking"!==t.initialNavigation&&void 0!==t.initialNavigation||r.initialNavigation(),n.setUpPreloading(),i.init(),r.resetRootComponentType(o.componentTypes[0]),this.resultOfPreactivationDone.next(null),this.resultOfPreactivationDone.complete())}},{key:"ngOnDestroy",value:function(){this.destroyed=!0}}]),e}();return e.\u0275fac=function(t){return new(t||e)(y.LFG(y.zs3))},e.\u0275prov=y.Yz7({token:e,factory:e.\u0275fac}),e}();function SM(e){return e.appInitializer.bind(e)}function xM(e){return e.bootstrapListener.bind(e)}var CM=new y.OlP("Router Initializer"),kM=function(){return function(){}}(),TM=n(96153),AM=function(){function e(e){this.httpServer=e,this.serverIds=[],this.serviceInitialized=new C.xQ,this.serverIds=this.getServerIds(),this.isServiceInitialized=!0,this.serviceInitialized.next(this.isServiceInitialized)}return e.prototype.getServerIds=function(){var e=localStorage.getItem("serverIds");return(null==e?void 0:e.length)>0?e.split(","):[]},e.prototype.updateServerIds=function(){localStorage.removeItem("serverIds"),localStorage.setItem("serverIds",this.serverIds.toString())},e.prototype.get=function(e){var t=JSON.parse(localStorage.getItem("server-"+e));return new Promise(function(e){e(t)})},e.prototype.create=function(e){return e.id=this.serverIds.length+1,localStorage.setItem("server-"+e.id,JSON.stringify(e)),this.serverIds.push("server-"+e.id),this.updateServerIds(),new Promise(function(t){t(e)})},e.prototype.update=function(e){return localStorage.removeItem("server-"+e.id),localStorage.setItem("server-"+e.id,JSON.stringify(e)),new Promise(function(t){t(e)})},e.prototype.findAll=function(){var e=this;return new Promise(function(t){var n=[];e.serverIds.forEach(function(e){var t=JSON.parse(localStorage.getItem(e));n.push(t)}),t(n)})},e.prototype.delete=function(e){return localStorage.removeItem("server-"+e.id),this.serverIds=this.serverIds.filter(function(t){return t!=="server-"+e.id}),this.updateServerIds(),new Promise(function(t){t(e.id)})},e.prototype.getServerUrl=function(e){return e.protocol+"//"+e.host+":"+e.port+"/"},e.prototype.checkServerVersion=function(e){return this.httpServer.get(e,"/version")},e.prototype.getLocalServer=function(e,t){var n=this;return new Promise(function(i,r){n.findAll().then(function(o){var a=o.find(function(e){return"bundled"===e.location});if(a)a.host=e,a.port=t,a.protocol=location.protocol,n.update(a).then(function(e){i(e)},r);else{var s=new kM;s.name="local",s.host=e,s.port=t,s.location="bundled",s.protocol=location.protocol,n.create(s).then(function(e){i(e)},r)}},r)})},e.\u0275fac=function(t){return new(t||e)(y.LFG(TM.wh))},e.\u0275prov=y.Yz7({token:e,factory:e.\u0275fac}),e}(),ZM=function(){return function(e,t,n){void 0===n&&(n=!1),this.visible=e,this.error=t,this.clear=n}}(),MM=function(){function e(){this.state=new Ce.X(new ZM(!1))}return e.prototype.setError=function(e){this.state.next(new ZM(!1,e.error))},e.prototype.clear=function(){this.state.next(new ZM(!1,null,!0))},e.prototype.activate=function(){this.state.next(new ZM(!0))},e.prototype.deactivate=function(){this.state.next(new ZM(!1))},e.\u0275prov=y.Yz7({token:e,factory:e.\u0275fac=function(t){return new(t||e)}}),e}();function OM(e,t){if(1&e&&(y.O4$(),y._UZ(0,"circle",3)),2&e){var n=y.oxw();y.Udp("animation-name","mat-progress-spinner-stroke-rotate-"+n._spinnerAnimationLabel)("stroke-dashoffset",n._getStrokeDashOffset(),"px")("stroke-dasharray",n._getStrokeCircumference(),"px")("stroke-width",n._getCircleStrokeWidth(),"%"),y.uIk("r",n._getCircleRadius())}}function EM(e,t){if(1&e&&(y.O4$(),y._UZ(0,"circle",3)),2&e){var n=y.oxw();y.Udp("stroke-dashoffset",n._getStrokeDashOffset(),"px")("stroke-dasharray",n._getStrokeCircumference(),"px")("stroke-width",n._getCircleStrokeWidth(),"%"),y.uIk("r",n._getCircleRadius())}}function PM(e,t){if(1&e&&(y.O4$(),y._UZ(0,"circle",3)),2&e){var n=y.oxw();y.Udp("animation-name","mat-progress-spinner-stroke-rotate-"+n._spinnerAnimationLabel)("stroke-dashoffset",n._getStrokeDashOffset(),"px")("stroke-dasharray",n._getStrokeCircumference(),"px")("stroke-width",n._getCircleStrokeWidth(),"%"),y.uIk("r",n._getCircleRadius())}}function IM(e,t){if(1&e&&(y.O4$(),y._UZ(0,"circle",3)),2&e){var n=y.oxw();y.Udp("stroke-dashoffset",n._getStrokeDashOffset(),"px")("stroke-dasharray",n._getStrokeCircumference(),"px")("stroke-width",n._getCircleStrokeWidth(),"%"),y.uIk("r",n._getCircleRadius())}}var qM=".mat-progress-spinner{display:block;position:relative;overflow:hidden}.mat-progress-spinner svg{position:absolute;transform:rotate(-90deg);top:0;left:0;transform-origin:center;overflow:visible}.mat-progress-spinner circle{fill:transparent;transform-origin:center;transition:stroke-dashoffset 225ms linear}._mat-animation-noopable.mat-progress-spinner circle{transition:none;animation:none}.cdk-high-contrast-active .mat-progress-spinner circle{stroke:currentColor;stroke:CanvasText}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{animation:mat-progress-spinner-linear-rotate 2000ms linear infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition-property:stroke;animation-duration:4000ms;animation-timing-function:cubic-bezier(0.35, 0, 0.25, 1);animation-iteration-count:infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] svg{animation:mat-progress-spinner-stroke-rotate-fallback 10000ms cubic-bezier(0.87, 0.03, 0.33, 1) infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] circle{transition-property:stroke}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] circle{transition:none;animation:none}@keyframes mat-progress-spinner-linear-rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes mat-progress-spinner-stroke-rotate-100{0%{stroke-dashoffset:268.606171575px;transform:rotate(0)}12.5%{stroke-dashoffset:56.5486677px;transform:rotate(0)}12.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(72.5deg)}25%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(72.5deg)}25.0001%{stroke-dashoffset:268.606171575px;transform:rotate(270deg)}37.5%{stroke-dashoffset:56.5486677px;transform:rotate(270deg)}37.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(161.5deg)}50%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(161.5deg)}50.0001%{stroke-dashoffset:268.606171575px;transform:rotate(180deg)}62.5%{stroke-dashoffset:56.5486677px;transform:rotate(180deg)}62.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(251.5deg)}75%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(251.5deg)}75.0001%{stroke-dashoffset:268.606171575px;transform:rotate(90deg)}87.5%{stroke-dashoffset:56.5486677px;transform:rotate(90deg)}87.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(341.5deg)}100%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(341.5deg)}}@keyframes mat-progress-spinner-stroke-rotate-fallback{0%{transform:rotate(0deg)}25%{transform:rotate(1170deg)}50%{transform:rotate(2340deg)}75%{transform:rotate(3510deg)}100%{transform:rotate(4680deg)}}\n",NM=(0,ut.pj)(function(){return function e(t){(0,f.Z)(this,e),this._elementRef=t}}(),"primary"),DM=new y.OlP("mat-progress-spinner-default-options",{providedIn:"root",factory:function(){return{diameter:100}}}),RM=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(e,i,r,o,a){var s;(0,f.Z)(this,n),(s=t.call(this,e))._document=r,s._diameter=100,s._value=0,s._fallbackAnimation=!1,s.mode="determinate";var l=n._diameters;return s._spinnerAnimationLabel=s._getSpinnerAnimationLabel(),l.has(r.head)||l.set(r.head,new Set([100])),s._fallbackAnimation=i.EDGE||i.TRIDENT,s._noopAnimations="NoopAnimations"===o&&!!a&&!a._forceAnimations,a&&(a.diameter&&(s.diameter=a.diameter),a.strokeWidth&&(s.strokeWidth=a.strokeWidth)),s}return(0,m.Z)(n,[{key:"diameter",get:function(){return this._diameter},set:function(e){this._diameter=(0,S.su)(e),this._spinnerAnimationLabel=this._getSpinnerAnimationLabel(),!this._fallbackAnimation&&this._styleRoot&&this._attachStyleNode()}},{key:"strokeWidth",get:function(){return this._strokeWidth||this.diameter/10},set:function(e){this._strokeWidth=(0,S.su)(e)}},{key:"value",get:function(){return"determinate"===this.mode?this._value:0},set:function(e){this._value=Math.max(0,Math.min(100,(0,S.su)(e)))}},{key:"ngOnInit",value:function(){var e=this._elementRef.nativeElement;this._styleRoot=(0,w.kV)(e)||this._document.head,this._attachStyleNode();var t="mat-progress-spinner-indeterminate".concat(this._fallbackAnimation?"-fallback":"","-animation");e.classList.add(t)}},{key:"_getCircleRadius",value:function(){return(this.diameter-10)/2}},{key:"_getViewBox",value:function(){var e=2*this._getCircleRadius()+this.strokeWidth;return"0 0 ".concat(e," ").concat(e)}},{key:"_getStrokeCircumference",value:function(){return 2*Math.PI*this._getCircleRadius()}},{key:"_getStrokeDashOffset",value:function(){return"determinate"===this.mode?this._getStrokeCircumference()*(100-this._value)/100:this._fallbackAnimation&&"indeterminate"===this.mode?.2*this._getStrokeCircumference():null}},{key:"_getCircleStrokeWidth",value:function(){return this.strokeWidth/this.diameter*100}},{key:"_attachStyleNode",value:function(){var e=this._styleRoot,t=this._diameter,i=n._diameters,r=i.get(e);if(!r||!r.has(t)){var o=this._document.createElement("style");o.setAttribute("mat-spinner-animation",this._spinnerAnimationLabel),o.textContent=this._getAnimationText(),e.appendChild(o),r||(r=new Set,i.set(e,r)),r.add(t)}}},{key:"_getAnimationText",value:function(){var e=this._getStrokeCircumference();return"\n @keyframes mat-progress-spinner-stroke-rotate-DIAMETER {\n 0% { stroke-dashoffset: START_VALUE; transform: rotate(0); }\n 12.5% { stroke-dashoffset: END_VALUE; transform: rotate(0); }\n 12.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n 25% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n\n 25.0001% { stroke-dashoffset: START_VALUE; transform: rotate(270deg); }\n 37.5% { stroke-dashoffset: END_VALUE; transform: rotate(270deg); }\n 37.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n 50% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n\n 50.0001% { stroke-dashoffset: START_VALUE; transform: rotate(180deg); }\n 62.5% { stroke-dashoffset: END_VALUE; transform: rotate(180deg); }\n 62.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n 75% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n\n 75.0001% { stroke-dashoffset: START_VALUE; transform: rotate(90deg); }\n 87.5% { stroke-dashoffset: END_VALUE; transform: rotate(90deg); }\n 87.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n 100% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n }\n".replace(/START_VALUE/g,"".concat(.95*e)).replace(/END_VALUE/g,"".concat(.2*e)).replace(/DIAMETER/g,"".concat(this._spinnerAnimationLabel))}},{key:"_getSpinnerAnimationLabel",value:function(){return this.diameter.toString().replace(".","_")}}]),n}(NM);return e.\u0275fac=function(t){return new(t||e)(y.Y36(y.SBq),y.Y36(w.t4),y.Y36(_.K0,8),y.Y36(vt.Qb,8),y.Y36(DM))},e.\u0275cmp=y.Xpm({type:e,selectors:[["mat-progress-spinner"]],hostAttrs:["role","progressbar","tabindex","-1",1,"mat-progress-spinner"],hostVars:10,hostBindings:function(e,t){2&e&&(y.uIk("aria-valuemin","determinate"===t.mode?0:null)("aria-valuemax","determinate"===t.mode?100:null)("aria-valuenow","determinate"===t.mode?t.value:null)("mode",t.mode),y.Udp("width",t.diameter,"px")("height",t.diameter,"px"),y.ekj("_mat-animation-noopable",t._noopAnimations))},inputs:{color:"color",mode:"mode",diameter:"diameter",strokeWidth:"strokeWidth",value:"value"},exportAs:["matProgressSpinner"],features:[y.qOj],decls:3,vars:8,consts:[["preserveAspectRatio","xMidYMid meet","focusable","false","aria-hidden","true",3,"ngSwitch"],["cx","50%","cy","50%",3,"animation-name","stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%",3,"stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%"]],template:function(e,t){1&e&&(y.O4$(),y.TgZ(0,"svg",0),y.YNc(1,OM,1,9,"circle",1),y.YNc(2,EM,1,7,"circle",2),y.qZA()),2&e&&(y.Udp("width",t.diameter,"px")("height",t.diameter,"px"),y.Q6J("ngSwitch","indeterminate"===t.mode),y.uIk("viewBox",t._getViewBox()),y.xp6(1),y.Q6J("ngSwitchCase",!0),y.xp6(1),y.Q6J("ngSwitchCase",!1))},directives:[_.RF,_.n9],styles:[qM],encapsulation:2,changeDetection:0}),e._diameters=new WeakMap,e}(),LM=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(e,i,r,o,a){var s;return(0,f.Z)(this,n),(s=t.call(this,e,i,r,o,a)).mode="indeterminate",s}return n}(RM);return e.\u0275fac=function(t){return new(t||e)(y.Y36(y.SBq),y.Y36(w.t4),y.Y36(_.K0,8),y.Y36(vt.Qb,8),y.Y36(DM))},e.\u0275cmp=y.Xpm({type:e,selectors:[["mat-spinner"]],hostAttrs:["role","progressbar","mode","indeterminate",1,"mat-spinner","mat-progress-spinner"],hostVars:6,hostBindings:function(e,t){2&e&&(y.Udp("width",t.diameter,"px")("height",t.diameter,"px"),y.ekj("_mat-animation-noopable",t._noopAnimations))},inputs:{color:"color"},features:[y.qOj],decls:3,vars:8,consts:[["preserveAspectRatio","xMidYMid meet","focusable","false","aria-hidden","true",3,"ngSwitch"],["cx","50%","cy","50%",3,"animation-name","stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%",3,"stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%"]],template:function(e,t){1&e&&(y.O4$(),y.TgZ(0,"svg",0),y.YNc(1,PM,1,9,"circle",1),y.YNc(2,IM,1,7,"circle",2),y.qZA()),2&e&&(y.Udp("width",t.diameter,"px")("height",t.diameter,"px"),y.Q6J("ngSwitch","indeterminate"===t.mode),y.uIk("viewBox",t._getViewBox()),y.xp6(1),y.Q6J("ngSwitchCase",!0),y.xp6(1),y.Q6J("ngSwitchCase",!1))},directives:[_.RF,_.n9],styles:[qM],encapsulation:2,changeDetection:0}),e}(),FM=function(){var e=function e(){(0,f.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=y.oAB({type:e}),e.\u0275inj=y.cJS({imports:[[ut.BQ,_.ez],ut.BQ]}),e}(),BM=n(11363),jM=n(91925),zM=["*"];function UM(e){return Error('Unable to find icon with the name "'.concat(e,'"'))}function HM(e){return Error("The URL provided to MatIconRegistry was not trusted as a resource URL "+"via Angular's DomSanitizer. Attempted URL was \"".concat(e,'".'))}function YM(e){return Error("The literal provided to MatIconRegistry was not trusted as safe HTML by "+"Angular's DomSanitizer. Attempted literal was \"".concat(e,'".'))}var JM=function e(t,n,i){(0,f.Z)(this,e),this.url=t,this.svgText=n,this.options=i},GM=function(){var e=function(){function e(t,n,i,r){(0,f.Z)(this,e),this._httpClient=t,this._sanitizer=n,this._errorHandler=r,this._svgIconConfigs=new Map,this._iconSetConfigs=new Map,this._cachedIconsByUrl=new Map,this._inProgressUrlFetches=new Map,this._fontCssClassesByAlias=new Map,this._resolvers=[],this._defaultFontSetClass="material-icons",this._document=i}return(0,m.Z)(e,[{key:"addSvgIcon",value:function(e,t,n){return this.addSvgIconInNamespace("",e,t,n)}},{key:"addSvgIconLiteral",value:function(e,t,n){return this.addSvgIconLiteralInNamespace("",e,t,n)}},{key:"addSvgIconInNamespace",value:function(e,t,n,i){return this._addSvgIconConfig(e,t,new JM(n,null,i))}},{key:"addSvgIconResolver",value:function(e){return this._resolvers.push(e),this}},{key:"addSvgIconLiteralInNamespace",value:function(e,t,n,i){var r=this._sanitizer.sanitize(y.q3G.HTML,n);if(!r)throw YM(n);return this._addSvgIconConfig(e,t,new JM("",r,i))}},{key:"addSvgIconSet",value:function(e,t){return this.addSvgIconSetInNamespace("",e,t)}},{key:"addSvgIconSetLiteral",value:function(e,t){return this.addSvgIconSetLiteralInNamespace("",e,t)}},{key:"addSvgIconSetInNamespace",value:function(e,t,n){return this._addSvgIconSetConfig(e,new JM(t,null,n))}},{key:"addSvgIconSetLiteralInNamespace",value:function(e,t,n){var i=this._sanitizer.sanitize(y.q3G.HTML,t);if(!i)throw YM(t);return this._addSvgIconSetConfig(e,new JM("",i,n))}},{key:"registerFontClassAlias",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e;return this._fontCssClassesByAlias.set(e,t),this}},{key:"classNameForFontAlias",value:function(e){return this._fontCssClassesByAlias.get(e)||e}},{key:"setDefaultFontSetClass",value:function(e){return this._defaultFontSetClass=e,this}},{key:"getDefaultFontSetClass",value:function(){return this._defaultFontSetClass}},{key:"getSvgIconFromUrl",value:function(e){var t=this,n=this._sanitizer.sanitize(y.q3G.RESOURCE_URL,e);if(!n)throw HM(e);var i=this._cachedIconsByUrl.get(n);return i?(0,Te.of)(WM(i)):this._loadSvgIconFromConfig(new JM(e,null)).pipe((0,q.b)(function(e){return t._cachedIconsByUrl.set(n,e)}),(0,P.U)(function(e){return WM(e)}))}},{key:"getNamedSvgIcon",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=VM(t,e),i=this._svgIconConfigs.get(n);if(i)return this._getSvgFromConfig(i);if(i=this._getIconConfigFromResolvers(t,e))return this._svgIconConfigs.set(n,i),this._getSvgFromConfig(i);var r=this._iconSetConfigs.get(t);return r?this._getSvgFromIconSetConfigs(e,r):(0,BM._)(UM(n))}},{key:"ngOnDestroy",value:function(){this._resolvers=[],this._svgIconConfigs.clear(),this._iconSetConfigs.clear(),this._cachedIconsByUrl.clear()}},{key:"_getSvgFromConfig",value:function(e){return e.svgText?(0,Te.of)(WM(this._svgElementFromConfig(e))):this._loadSvgIconFromConfig(e).pipe((0,P.U)(function(e){return WM(e)}))}},{key:"_getSvgFromIconSetConfigs",value:function(e,t){var n=this,i=this._extractIconWithNameFromAnySet(e,t);if(i)return(0,Te.of)(i);var r=t.filter(function(e){return!e.svgText}).map(function(e){return n._loadSvgIconSetFromConfig(e).pipe((0,dT.K)(function(t){var i=n._sanitizer.sanitize(y.q3G.RESOURCE_URL,e.url),r="Loading icon set URL: ".concat(i," failed: ").concat(t.message);return n._errorHandler.handleError(new Error(r)),(0,Te.of)(null)}))});return(0,jM.D)(r).pipe((0,P.U)(function(){var i=n._extractIconWithNameFromAnySet(e,t);if(!i)throw UM(e);return i}))}},{key:"_extractIconWithNameFromAnySet",value:function(e,t){for(var n=t.length-1;n>=0;n--){var i=t[n];if(i.svgText&&i.svgText.indexOf(e)>-1){var r=this._svgElementFromConfig(i),o=this._extractSvgIconFromSet(r,e,i.options);if(o)return o}}return null}},{key:"_loadSvgIconFromConfig",value:function(e){var t=this;return this._fetchIcon(e).pipe((0,q.b)(function(t){return e.svgText=t}),(0,P.U)(function(){return t._svgElementFromConfig(e)}))}},{key:"_loadSvgIconSetFromConfig",value:function(e){return e.svgText?(0,Te.of)(null):this._fetchIcon(e).pipe((0,q.b)(function(t){return e.svgText=t}))}},{key:"_extractSvgIconFromSet",value:function(e,t,n){var i=e.querySelector('[id="'.concat(t,'"]'));if(!i)return null;var r=i.cloneNode(!0);if(r.removeAttribute("id"),"svg"===r.nodeName.toLowerCase())return this._setSvgAttributes(r,n);if("symbol"===r.nodeName.toLowerCase())return this._setSvgAttributes(this._toSvgElement(r),n);var o=this._svgElementFromString("");return o.appendChild(r),this._setSvgAttributes(o,n)}},{key:"_svgElementFromString",value:function(e){var t=this._document.createElement("DIV");t.innerHTML=e;var n=t.querySelector("svg");if(!n)throw Error(" tag not found");return n}},{key:"_toSvgElement",value:function(e){for(var t=this._svgElementFromString(""),n=e.attributes,i=0;i*,.mat-flat-button .mat-button-wrapper>*,.mat-stroked-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-fab .mat-button-wrapper>*,.mat-mini-fab .mat-button-wrapper>*{vertical-align:middle}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button{display:inline-flex;justify-content:center;align-items:center;font-size:inherit;width:2.5em;height:2.5em}.cdk-high-contrast-active .mat-button,.cdk-high-contrast-active .mat-flat-button,.cdk-high-contrast-active .mat-raised-button,.cdk-high-contrast-active .mat-icon-button,.cdk-high-contrast-active .mat-fab,.cdk-high-contrast-active .mat-mini-fab{outline:solid 1px}.cdk-high-contrast-active .mat-button-base.cdk-keyboard-focused,.cdk-high-contrast-active .mat-button-base.cdk-program-focused{outline:solid 3px}\n",lO=["mat-button","mat-flat-button","mat-icon-button","mat-raised-button","mat-stroked-button","mat-mini-fab","mat-fab"],cO=(0,ut.pj)((0,ut.Id)((0,ut.Kr)(function(){return function e(t){(0,f.Z)(this,e),this._elementRef=t}}()))),uO=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(e,i,r){var o;(0,f.Z)(this,n),(o=t.call(this,e))._focusMonitor=i,o._animationMode=r,o.isRoundButton=o._hasHostAttributes("mat-fab","mat-mini-fab"),o.isIconButton=o._hasHostAttributes("mat-icon-button");var a,s=(0,l.Z)(lO);try{for(s.s();!(a=s.n()).done;){var c=a.value;o._hasHostAttributes(c)&&o._getHostElement().classList.add(c)}}catch(u){s.e(u)}finally{s.f()}return e.nativeElement.classList.add("mat-button-base"),o.isRoundButton&&(o.color="accent"),o}return(0,m.Z)(n,[{key:"ngAfterViewInit",value:function(){this._focusMonitor.monitor(this._elementRef,!0)}},{key:"ngOnDestroy",value:function(){this._focusMonitor.stopMonitoring(this._elementRef)}},{key:"focus",value:function(e,t){e?this._focusMonitor.focusVia(this._getHostElement(),e,t):this._getHostElement().focus(t)}},{key:"_getHostElement",value:function(){return this._elementRef.nativeElement}},{key:"_isRippleDisabled",value:function(){return this.disableRipple||this.disabled}},{key:"_hasHostAttributes",value:function(){for(var e=this,t=arguments.length,n=new Array(t),i=0;i visible",(0,gt.jt)("200ms cubic-bezier(0, 0, 0.2, 1)",(0,gt.F4)([(0,gt.oB)({opacity:0,transform:"scale(0)",offset:0}),(0,gt.oB)({opacity:.5,transform:"scale(0.99)",offset:.5}),(0,gt.oB)({opacity:1,transform:"scale(1)",offset:1})]))),(0,gt.eR)("* => hidden",(0,gt.jt)("100ms cubic-bezier(0, 0, 0.2, 1)",(0,gt.oB)({opacity:0})))])},CO="tooltip-panel",kO=(0,w.i$)({passive:!0}),TO=new y.OlP("mat-tooltip-scroll-strategy"),AO={provide:TO,deps:[we.aV],useFactory:function(e){return function(){return e.scrollStrategies.reposition({scrollThrottle:20})}}},ZO=new y.OlP("mat-tooltip-default-options",{providedIn:"root",factory:function(){return{showDelay:0,hideDelay:0,touchendHideDelay:1500}}}),MO=function(){var e=function(){function e(t,n,i,r,o,a,s,l,c,u,d,h){var p=this;(0,f.Z)(this,e),this._overlay=t,this._elementRef=n,this._scrollDispatcher=i,this._viewContainerRef=r,this._ngZone=o,this._platform=a,this._ariaDescriber=s,this._focusMonitor=l,this._dir=u,this._defaultOptions=d,this._position="below",this._disabled=!1,this._viewInitialized=!1,this._pointerExitEventsInitialized=!1,this._viewportMargin=8,this._cssClassPrefix="mat",this.showDelay=this._defaultOptions.showDelay,this.hideDelay=this._defaultOptions.hideDelay,this.touchGestures="auto",this._message="",this._passiveListeners=[],this._destroyed=new C.xQ,this._handleKeydown=function(e){p._isTooltipVisible()&&e.keyCode===dt.hY&&!(0,dt.Vb)(e)&&(e.preventDefault(),e.stopPropagation(),p._ngZone.run(function(){return p.hide(0)}))},this._scrollStrategy=c,this._document=h,d&&(d.position&&(this.position=d.position),d.touchGestures&&(this.touchGestures=d.touchGestures)),u.change.pipe((0,O.R)(this._destroyed)).subscribe(function(){p._overlayRef&&p._updatePosition(p._overlayRef)}),o.runOutsideAngular(function(){n.nativeElement.addEventListener("keydown",p._handleKeydown)})}return(0,m.Z)(e,[{key:"position",get:function(){return this._position},set:function(e){var t;e!==this._position&&(this._position=e,this._overlayRef&&(this._updatePosition(this._overlayRef),null===(t=this._tooltipInstance)||void 0===t||t.show(0),this._overlayRef.updatePosition()))}},{key:"disabled",get:function(){return this._disabled},set:function(e){this._disabled=(0,S.Ig)(e),this._disabled?this.hide(0):this._setupPointerEnterEventsIfNeeded()}},{key:"message",get:function(){return this._message},set:function(e){var t=this;this._ariaDescriber.removeDescription(this._elementRef.nativeElement,this._message,"tooltip"),this._message=null!=e?String(e).trim():"",!this._message&&this._isTooltipVisible()?this.hide(0):(this._setupPointerEnterEventsIfNeeded(),this._updateTooltipMessage(),this._ngZone.runOutsideAngular(function(){Promise.resolve().then(function(){t._ariaDescriber.describe(t._elementRef.nativeElement,t.message,"tooltip")})}))}},{key:"tooltipClass",get:function(){return this._tooltipClass},set:function(e){this._tooltipClass=e,this._tooltipInstance&&this._setTooltipClass(this._tooltipClass)}},{key:"ngAfterViewInit",value:function(){var e=this;this._viewInitialized=!0,this._setupPointerEnterEventsIfNeeded(),this._focusMonitor.monitor(this._elementRef).pipe((0,O.R)(this._destroyed)).subscribe(function(t){t?"keyboard"===t&&e._ngZone.run(function(){return e.show()}):e._ngZone.run(function(){return e.hide(0)})})}},{key:"ngOnDestroy",value:function(){var e=this._elementRef.nativeElement;clearTimeout(this._touchstartTimeout),this._overlayRef&&(this._overlayRef.dispose(),this._tooltipInstance=null),e.removeEventListener("keydown",this._handleKeydown),this._passiveListeners.forEach(function(t){var n=(0,s.Z)(t,2);e.removeEventListener(n[0],n[1],kO)}),this._passiveListeners.length=0,this._destroyed.next(),this._destroyed.complete(),this._ariaDescriber.removeDescription(e,this.message,"tooltip"),this._focusMonitor.stopMonitoring(e)}},{key:"show",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.showDelay;if(!this.disabled&&this.message&&(!this._isTooltipVisible()||this._tooltipInstance._showTimeoutId||this._tooltipInstance._hideTimeoutId)){var n=this._createOverlay();this._detach(),this._portal=this._portal||new SO.C5(this._tooltipComponent,this._viewContainerRef),this._tooltipInstance=n.attach(this._portal).instance,this._tooltipInstance.afterHidden().pipe((0,O.R)(this._destroyed)).subscribe(function(){return e._detach()}),this._setTooltipClass(this._tooltipClass),this._updateTooltipMessage(),this._tooltipInstance.show(t)}}},{key:"hide",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.hideDelay;this._tooltipInstance&&this._tooltipInstance.hide(e)}},{key:"toggle",value:function(){this._isTooltipVisible()?this.hide():this.show()}},{key:"_isTooltipVisible",value:function(){return!!this._tooltipInstance&&this._tooltipInstance.isVisible()}},{key:"_createOverlay",value:function(){var e=this;if(this._overlayRef)return this._overlayRef;var t=this._scrollDispatcher.getAncestorScrollContainers(this._elementRef),n=this._overlay.position().flexibleConnectedTo(this._elementRef).withTransformOriginOn(".".concat(this._cssClassPrefix,"-tooltip")).withFlexibleDimensions(!1).withViewportMargin(this._viewportMargin).withScrollableContainers(t);return n.positionChanges.pipe((0,O.R)(this._destroyed)).subscribe(function(t){e._updateCurrentPositionClass(t.connectionPair),e._tooltipInstance&&t.scrollableViewProperties.isOverlayClipped&&e._tooltipInstance.isVisible()&&e._ngZone.run(function(){return e.hide(0)})}),this._overlayRef=this._overlay.create({direction:this._dir,positionStrategy:n,panelClass:"".concat(this._cssClassPrefix,"-").concat(CO),scrollStrategy:this._scrollStrategy()}),this._updatePosition(this._overlayRef),this._overlayRef.detachments().pipe((0,O.R)(this._destroyed)).subscribe(function(){return e._detach()}),this._overlayRef.outsidePointerEvents().pipe((0,O.R)(this._destroyed)).subscribe(function(){var t;return null===(t=e._tooltipInstance)||void 0===t?void 0:t._handleBodyInteraction()}),this._overlayRef}},{key:"_detach",value:function(){this._overlayRef&&this._overlayRef.hasAttached()&&this._overlayRef.detach(),this._tooltipInstance=null}},{key:"_updatePosition",value:function(e){var t=e.getConfig().positionStrategy,n=this._getOrigin(),i=this._getOverlayPosition();t.withPositions([this._addOffset(Object.assign(Object.assign({},n.main),i.main)),this._addOffset(Object.assign(Object.assign({},n.fallback),i.fallback))])}},{key:"_addOffset",value:function(e){return e}},{key:"_getOrigin",value:function(){var e,t=!this._dir||"ltr"==this._dir.value,n=this.position;"above"==n||"below"==n?e={originX:"center",originY:"above"==n?"top":"bottom"}:"before"==n||"left"==n&&t||"right"==n&&!t?e={originX:"start",originY:"center"}:("after"==n||"right"==n&&t||"left"==n&&!t)&&(e={originX:"end",originY:"center"});var i=this._invertPosition(e.originX,e.originY);return{main:e,fallback:{originX:i.x,originY:i.y}}}},{key:"_getOverlayPosition",value:function(){var e,t=!this._dir||"ltr"==this._dir.value,n=this.position;"above"==n?e={overlayX:"center",overlayY:"bottom"}:"below"==n?e={overlayX:"center",overlayY:"top"}:"before"==n||"left"==n&&t||"right"==n&&!t?e={overlayX:"end",overlayY:"center"}:("after"==n||"right"==n&&t||"left"==n&&!t)&&(e={overlayX:"start",overlayY:"center"});var i=this._invertPosition(e.overlayX,e.overlayY);return{main:e,fallback:{overlayX:i.x,overlayY:i.y}}}},{key:"_updateTooltipMessage",value:function(){var e=this;this._tooltipInstance&&(this._tooltipInstance.message=this.message,this._tooltipInstance._markForCheck(),this._ngZone.onMicrotaskEmpty.pipe((0,I.q)(1),(0,O.R)(this._destroyed)).subscribe(function(){e._tooltipInstance&&e._overlayRef.updatePosition()}))}},{key:"_setTooltipClass",value:function(e){this._tooltipInstance&&(this._tooltipInstance.tooltipClass=e,this._tooltipInstance._markForCheck())}},{key:"_invertPosition",value:function(e,t){return"above"===this.position||"below"===this.position?"top"===t?t="bottom":"bottom"===t&&(t="top"):"end"===e?e="start":"start"===e&&(e="end"),{x:e,y:t}}},{key:"_updateCurrentPositionClass",value:function(e){var t,n=e.overlayY,i=e.originX;if((t="center"===n?this._dir&&"rtl"===this._dir.value?"end"===i?"left":"right":"start"===i?"left":"right":"bottom"===n&&"top"===e.originY?"above":"below")!==this._currentPosition){var r=this._overlayRef;if(r){var o="".concat(this._cssClassPrefix,"-").concat(CO,"-");r.removePanelClass(o+this._currentPosition),r.addPanelClass(o+t)}this._currentPosition=t}}},{key:"_setupPointerEnterEventsIfNeeded",value:function(){var e=this;!this._disabled&&this.message&&this._viewInitialized&&!this._passiveListeners.length&&(this._platformSupportsMouseEvents()?this._passiveListeners.push(["mouseenter",function(){e._setupPointerExitEventsIfNeeded(),e.show()}]):"off"!==this.touchGestures&&(this._disableNativeGesturesIfNecessary(),this._passiveListeners.push(["touchstart",function(){e._setupPointerExitEventsIfNeeded(),clearTimeout(e._touchstartTimeout),e._touchstartTimeout=setTimeout(function(){return e.show()},500)}])),this._addListeners(this._passiveListeners))}},{key:"_setupPointerExitEventsIfNeeded",value:function(){var e,t=this;if(!this._pointerExitEventsInitialized){this._pointerExitEventsInitialized=!0;var n=[];if(this._platformSupportsMouseEvents())n.push(["mouseleave",function(){return t.hide()}],["wheel",function(e){return t._wheelListener(e)}]);else if("off"!==this.touchGestures){this._disableNativeGesturesIfNecessary();var i=function(){clearTimeout(t._touchstartTimeout),t.hide(t._defaultOptions.touchendHideDelay)};n.push(["touchend",i],["touchcancel",i])}this._addListeners(n),(e=this._passiveListeners).push.apply(e,n)}}},{key:"_addListeners",value:function(e){var t=this;e.forEach(function(e){var n=(0,s.Z)(e,2);t._elementRef.nativeElement.addEventListener(n[0],n[1],kO)})}},{key:"_platformSupportsMouseEvents",value:function(){return!this._platform.IOS&&!this._platform.ANDROID}},{key:"_wheelListener",value:function(e){if(this._isTooltipVisible()){var t=this._document.elementFromPoint(e.clientX,e.clientY),n=this._elementRef.nativeElement;t===n||n.contains(t)||this.hide()}}},{key:"_disableNativeGesturesIfNecessary",value:function(){var e=this.touchGestures;if("off"!==e){var t=this._elementRef.nativeElement,n=t.style;("on"===e||"INPUT"!==t.nodeName&&"TEXTAREA"!==t.nodeName)&&(n.userSelect=n.msUserSelect=n.webkitUserSelect=n.MozUserSelect="none"),"on"!==e&&t.draggable||(n.webkitUserDrag="none"),n.touchAction="none",n.webkitTapHighlightColor="transparent"}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(y.Y36(we.aV),y.Y36(y.SBq),y.Y36(b.mF),y.Y36(y.s_b),y.Y36(y.R0b),y.Y36(w.t4),y.Y36(x.$s),y.Y36(x.tE),y.Y36(void 0),y.Y36(D.Is),y.Y36(void 0),y.Y36(_.K0))},e.\u0275dir=y.lG2({type:e,inputs:{showDelay:["matTooltipShowDelay","showDelay"],hideDelay:["matTooltipHideDelay","hideDelay"],touchGestures:["matTooltipTouchGestures","touchGestures"],position:["matTooltipPosition","position"],disabled:["matTooltipDisabled","disabled"],message:["matTooltip","message"],tooltipClass:["matTooltipClass","tooltipClass"]}}),e}(),OO=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(e,i,r,o,a,s,l,c,u,d,h,p){var m;return(0,f.Z)(this,n),(m=t.call(this,e,i,r,o,a,s,l,c,u,d,h,p))._tooltipComponent=PO,m}return n}(MO);return e.\u0275fac=function(t){return new(t||e)(y.Y36(we.aV),y.Y36(y.SBq),y.Y36(b.mF),y.Y36(y.s_b),y.Y36(y.R0b),y.Y36(w.t4),y.Y36(x.$s),y.Y36(x.tE),y.Y36(TO),y.Y36(D.Is,8),y.Y36(ZO,8),y.Y36(_.K0))},e.\u0275dir=y.lG2({type:e,selectors:[["","matTooltip",""]],hostAttrs:[1,"mat-tooltip-trigger"],exportAs:["matTooltip"],features:[y.qOj]}),e}(),EO=function(){var e=function(){function e(t){(0,f.Z)(this,e),this._changeDetectorRef=t,this._visibility="initial",this._closeOnInteraction=!1,this._onHide=new C.xQ}return(0,m.Z)(e,[{key:"show",value:function(e){var t=this;clearTimeout(this._hideTimeoutId),this._closeOnInteraction=!0,this._showTimeoutId=setTimeout(function(){t._visibility="visible",t._showTimeoutId=void 0,t._onShow(),t._markForCheck()},e)}},{key:"hide",value:function(e){var t=this;clearTimeout(this._showTimeoutId),this._hideTimeoutId=setTimeout(function(){t._visibility="hidden",t._hideTimeoutId=void 0,t._markForCheck()},e)}},{key:"afterHidden",value:function(){return this._onHide}},{key:"isVisible",value:function(){return"visible"===this._visibility}},{key:"ngOnDestroy",value:function(){clearTimeout(this._showTimeoutId),clearTimeout(this._hideTimeoutId),this._onHide.complete()}},{key:"_animationStart",value:function(){this._closeOnInteraction=!1}},{key:"_animationDone",value:function(e){var t=e.toState;"hidden"!==t||this.isVisible()||this._onHide.next(),"visible"!==t&&"hidden"!==t||(this._closeOnInteraction=!0)}},{key:"_handleBodyInteraction",value:function(){this._closeOnInteraction&&this.hide(0)}},{key:"_markForCheck",value:function(){this._changeDetectorRef.markForCheck()}},{key:"_onShow",value:function(){}}]),e}();return e.\u0275fac=function(t){return new(t||e)(y.Y36(y.sBO))},e.\u0275dir=y.lG2({type:e}),e}(),PO=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(e,i){var r;return(0,f.Z)(this,n),(r=t.call(this,e))._breakpointObserver=i,r._isHandset=r._breakpointObserver.observe("(max-width: 599.98px) and (orientation: portrait), (max-width: 959.98px) and (orientation: landscape)"),r}return n}(EO);return e.\u0275fac=function(t){return new(t||e)(y.Y36(y.sBO),y.Y36(vO))},e.\u0275cmp=y.Xpm({type:e,selectors:[["mat-tooltip-component"]],hostAttrs:["aria-hidden","true"],hostVars:2,hostBindings:function(e,t){2&e&&y.Udp("zoom","visible"===t._visibility?1:null)},features:[y.qOj],decls:3,vars:7,consts:[[1,"mat-tooltip",3,"ngClass"]],template:function(e,t){var n;1&e&&(y.TgZ(0,"div",0),y.NdJ("@state.start",function(){return t._animationStart()})("@state.done",function(e){return t._animationDone(e)}),y.ALo(1,"async"),y._uU(2),y.qZA()),2&e&&(y.ekj("mat-tooltip-handset",null==(n=y.lcZ(1,5,t._isHandset))?null:n.matches),y.Q6J("ngClass",t.tooltipClass)("@state",t._visibility),y.xp6(2),y.Oqu(t.message))},directives:[_.mk],pipes:[_.Ov],styles:[".mat-tooltip-panel{pointer-events:none !important}.mat-tooltip{color:#fff;border-radius:4px;margin:14px;max-width:250px;padding-left:8px;padding-right:8px;overflow:hidden;text-overflow:ellipsis}.cdk-high-contrast-active .mat-tooltip{outline:solid 1px}.mat-tooltip-handset{margin:24px;padding-left:16px;padding-right:16px}\n"],encapsulation:2,data:{animation:[xO.tooltipState]},changeDetection:0}),e}(),IO=function(){var e=function e(){(0,f.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=y.oAB({type:e}),e.\u0275inj=y.cJS({providers:[AO],imports:[[x.rt,_.ez,we.U8,ut.BQ],ut.BQ,b.ZD]}),e}();function qO(e,t){1&e&&(y.TgZ(0,"div",4),y._UZ(1,"mat-spinner",5),y.qZA())}function NO(e,t){if(1&e){var n=y.EpF();y.TgZ(0,"div",6),y.TgZ(1,"div",7),y.TgZ(2,"mat-icon"),y._uU(3,"error_outline"),y.qZA(),y.qZA(),y.TgZ(4,"div"),y._uU(5),y.qZA(),y.TgZ(6,"div"),y.TgZ(7,"button",8),y.NdJ("click",function(){return y.CHM(n),y.oxw(2).refresh()}),y.TgZ(8,"mat-icon"),y._uU(9,"refresh"),y.qZA(),y.qZA(),y.TgZ(10,"button",9),y.TgZ(11,"mat-icon"),y._uU(12,"home"),y.qZA(),y.qZA(),y.qZA(),y.qZA()}if(2&e){var i=y.oxw(2);y.xp6(5),y.hij("Error occurred: ",i.error.message,"")}}function DO(e,t){if(1&e&&(y.TgZ(0,"div",1),y.YNc(1,qO,2,0,"div",2),y.YNc(2,NO,13,1,"div",3),y.qZA()),2&e){var n=y.oxw();y.xp6(1),y.Q6J("ngIf",n.visible&&!n.error),y.xp6(1),y.Q6J("ngIf",n.error)}}var RO=function(){function e(e,t){this.progressService=e,this.router=t,this.visible=!1}return e.prototype.ngOnInit=function(){var e=this;this.progressService.state.subscribe(function(t){e.visible=t.visible,t.error&&!e.error&&(e.error=t.error),t.clear&&(e.error=null)}),this.routerSubscription=this.router.events.subscribe(function(){e.progressService.clear()})},e.prototype.refresh=function(){this.router.navigateByUrl(this.router.url)},e.prototype.ngOnDestroy=function(){this.routerSubscription.unsubscribe()},e.\u0275fac=function(t){return new(t||e)(y.Y36(MM),y.Y36($Z))},e.\u0275cmp=y.Xpm({type:e,selectors:[["app-progress"]],decls:1,vars:1,consts:[["class","overlay",4,"ngIf"],[1,"overlay"],["class","loading-spinner",4,"ngIf"],["class","error-state",4,"ngIf"],[1,"loading-spinner"],["color","primary"],[1,"error-state"],[1,"error-icon"],["mat-button","","matTooltip","Refresh page","matTooltipClass","custom-tooltip",3,"click"],["mat-button","","routerLink","/","matTooltip","Go to home","matTooltipClass","custom-tooltip"]],template:function(e,t){1&e&&y.YNc(0,DO,3,2,"div",0),2&e&&y.Q6J("ngIf",t.visible||t.error)},directives:[_.O5,LM,iO,uO,OO,tM],styles:[".overlay[_ngcontent-%COMP%]{position:fixed;width:100%;height:100%;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);z-index:2000}.error-state[_ngcontent-%COMP%], .loading-spinner[_ngcontent-%COMP%]{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.error-state[_ngcontent-%COMP%] div[_ngcontent-%COMP%]{text-align:center}.error-icon[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:64px;width:64px;height:64px}"]}),e}(),LO=function(){function e(e,t,n,i){this.router=e,this.serverService=t,this.progressService=n,this.document=i}return e.prototype.ngOnInit=function(){var e=this;this.progressService.activate(),setTimeout(function(){var t;t=parseInt(e.document.location.port,10)?parseInt(e.document.location.port,10):"https:"==e.document.location.protocol?443:80,e.serverService.getLocalServer(e.document.location.hostname,t).then(function(t){e.progressService.deactivate(),e.router.navigate(["/server",t.id,"projects"])})},100)},e.\u0275fac=function(t){return new(t||e)(y.Y36($Z),y.Y36(AM),y.Y36(MM),y.Y36(_.K0))},e.\u0275cmp=y.Xpm({type:e,selectors:[["app-bundled-server-finder"]],decls:1,vars:0,template:function(e,t){1&e&&y._UZ(0,"app-progress")},directives:[RO],styles:[""]}),e}(),FO=n(61855),BO=function(){function e(){this.dataChange=new Ce.X([])}return Object.defineProperty(e.prototype,"data",{get:function(){return this.dataChange.value},enumerable:!1,configurable:!0}),e.prototype.addServer=function(e){var t=this.data.slice();t.push(e),this.dataChange.next(t)},e.prototype.addServers=function(e){this.dataChange.next(e)},e.prototype.remove=function(e){var t=this.data.indexOf(e);t>=0&&(this.data.splice(t,1),this.dataChange.next(this.data.slice()))},e.prototype.find=function(e){return this.data.find(function(t){return t.name===e})},e.prototype.findIndex=function(e){return this.data.findIndex(function(t){return t.name===e})},e.prototype.update=function(e){var t=this.findIndex(e.name);t>=0&&(this.data[t]=e,this.dataChange.next(this.data.slice()))},e.\u0275prov=y.Yz7({token:e,factory:e.\u0275fac=function(t){return new(t||e)}}),e}();function jO(e,t){if(1&e){var n=y.EpF();y.TgZ(0,"div",1),y.TgZ(1,"button",2),y.NdJ("click",function(){return y.CHM(n),y.oxw().action()}),y._uU(2),y.qZA(),y.qZA()}if(2&e){var i=y.oxw();y.xp6(2),y.Oqu(i.data.action)}}function zO(e,t){}var UO=new y.OlP("MatSnackBarData"),HO=function e(){(0,f.Z)(this,e),this.politeness="assertive",this.announcementMessage="",this.duration=0,this.data=null,this.horizontalPosition="center",this.verticalPosition="bottom"},YO=Math.pow(2,31)-1,JO=function(){function e(t,n){var i=this;(0,f.Z)(this,e),this._overlayRef=n,this._afterDismissed=new C.xQ,this._afterOpened=new C.xQ,this._onAction=new C.xQ,this._dismissedByAction=!1,this.containerInstance=t,this.onAction().subscribe(function(){return i.dismiss()}),t._onExit.subscribe(function(){return i._finishDismiss()})}return(0,m.Z)(e,[{key:"dismiss",value:function(){this._afterDismissed.closed||this.containerInstance.exit(),clearTimeout(this._durationTimeoutId)}},{key:"dismissWithAction",value:function(){this._onAction.closed||(this._dismissedByAction=!0,this._onAction.next(),this._onAction.complete()),clearTimeout(this._durationTimeoutId)}},{key:"closeWithAction",value:function(){this.dismissWithAction()}},{key:"_dismissAfter",value:function(e){var t=this;this._durationTimeoutId=setTimeout(function(){return t.dismiss()},Math.min(e,YO))}},{key:"_open",value:function(){this._afterOpened.closed||(this._afterOpened.next(),this._afterOpened.complete())}},{key:"_finishDismiss",value:function(){this._overlayRef.dispose(),this._onAction.closed||this._onAction.complete(),this._afterDismissed.next({dismissedByAction:this._dismissedByAction}),this._afterDismissed.complete(),this._dismissedByAction=!1}},{key:"afterDismissed",value:function(){return this._afterDismissed}},{key:"afterOpened",value:function(){return this.containerInstance._onEnter}},{key:"onAction",value:function(){return this._onAction}}]),e}(),GO=function(){var e=function(){function e(t,n){(0,f.Z)(this,e),this.snackBarRef=t,this.data=n}return(0,m.Z)(e,[{key:"action",value:function(){this.snackBarRef.dismissWithAction()}},{key:"hasAction",get:function(){return!!this.data.action}}]),e}();return e.\u0275fac=function(t){return new(t||e)(y.Y36(JO),y.Y36(UO))},e.\u0275cmp=y.Xpm({type:e,selectors:[["simple-snack-bar"]],hostAttrs:[1,"mat-simple-snackbar"],decls:3,vars:2,consts:[["class","mat-simple-snackbar-action",4,"ngIf"],[1,"mat-simple-snackbar-action"],["mat-button","",3,"click"]],template:function(e,t){1&e&&(y.TgZ(0,"span"),y._uU(1),y.qZA(),y.YNc(2,jO,3,1,"div",0)),2&e&&(y.xp6(1),y.Oqu(t.data.message),y.xp6(1),y.Q6J("ngIf",t.hasAction))},directives:[_.O5,uO],styles:[".mat-simple-snackbar{display:flex;justify-content:space-between;align-items:center;line-height:20px;opacity:1}.mat-simple-snackbar-action{flex-shrink:0;margin:-8px -8px -8px 8px}.mat-simple-snackbar-action button{max-height:36px;min-width:0}[dir=rtl] .mat-simple-snackbar-action{margin-left:-8px;margin-right:8px}\n"],encapsulation:2,changeDetection:0}),e}(),WO={snackBarState:(0,gt.X$)("state",[(0,gt.SB)("void, hidden",(0,gt.oB)({transform:"scale(0.8)",opacity:0})),(0,gt.SB)("visible",(0,gt.oB)({transform:"scale(1)",opacity:1})),(0,gt.eR)("* => visible",(0,gt.jt)("150ms cubic-bezier(0, 0, 0.2, 1)")),(0,gt.eR)("* => void, * => hidden",(0,gt.jt)("75ms cubic-bezier(0.4, 0.0, 1, 1)",(0,gt.oB)({opacity:0})))])},VO=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(e,i,r,o,a){var s;return(0,f.Z)(this,n),(s=t.call(this))._ngZone=e,s._elementRef=i,s._changeDetectorRef=r,s._platform=o,s.snackBarConfig=a,s._announceDelay=150,s._destroyed=!1,s._onAnnounce=new C.xQ,s._onExit=new C.xQ,s._onEnter=new C.xQ,s._animationState="void",s.attachDomPortal=function(e){return s._assertNotAttached(),s._applySnackBarClasses(),s._portalOutlet.attachDomPortal(e)},s._live="assertive"!==a.politeness||a.announcementMessage?"off"===a.politeness?"off":"polite":"assertive",s._platform.FIREFOX&&("polite"===s._live&&(s._role="status"),"assertive"===s._live&&(s._role="alert")),s}return(0,m.Z)(n,[{key:"attachComponentPortal",value:function(e){return this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachComponentPortal(e)}},{key:"attachTemplatePortal",value:function(e){return this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachTemplatePortal(e)}},{key:"onAnimationEnd",value:function(e){var t=e.toState;if(("void"===t&&"void"!==e.fromState||"hidden"===t)&&this._completeExit(),"visible"===t){var n=this._onEnter;this._ngZone.run(function(){n.next(),n.complete()})}}},{key:"enter",value:function(){this._destroyed||(this._animationState="visible",this._changeDetectorRef.detectChanges(),this._screenReaderAnnounce())}},{key:"exit",value:function(){return this._animationState="hidden",this._elementRef.nativeElement.setAttribute("mat-exit",""),clearTimeout(this._announceTimeoutId),this._onExit}},{key:"ngOnDestroy",value:function(){this._destroyed=!0,this._completeExit()}},{key:"_completeExit",value:function(){var e=this;this._ngZone.onMicrotaskEmpty.pipe((0,I.q)(1)).subscribe(function(){e._onExit.next(),e._onExit.complete()})}},{key:"_applySnackBarClasses",value:function(){var e=this._elementRef.nativeElement,t=this.snackBarConfig.panelClass;t&&(Array.isArray(t)?t.forEach(function(t){return e.classList.add(t)}):e.classList.add(t)),"center"===this.snackBarConfig.horizontalPosition&&e.classList.add("mat-snack-bar-center"),"top"===this.snackBarConfig.verticalPosition&&e.classList.add("mat-snack-bar-top")}},{key:"_assertNotAttached",value:function(){this._portalOutlet.hasAttached()}},{key:"_screenReaderAnnounce",value:function(){var e=this;this._announceTimeoutId||this._ngZone.runOutsideAngular(function(){e._announceTimeoutId=setTimeout(function(){var t=e._elementRef.nativeElement.querySelector("[aria-hidden]"),n=e._elementRef.nativeElement.querySelector("[aria-live]");if(t&&n){var i=null;e._platform.isBrowser&&document.activeElement instanceof HTMLElement&&t.contains(document.activeElement)&&(i=document.activeElement),t.removeAttribute("aria-hidden"),n.appendChild(t),null==i||i.focus(),e._onAnnounce.next(),e._onAnnounce.complete()}},e._announceDelay)})}}]),n}(SO.en);return e.\u0275fac=function(t){return new(t||e)(y.Y36(y.R0b),y.Y36(y.SBq),y.Y36(y.sBO),y.Y36(w.t4),y.Y36(HO))},e.\u0275cmp=y.Xpm({type:e,selectors:[["snack-bar-container"]],viewQuery:function(e,t){var n;1&e&&y.Gf(SO.Pl,7),2&e&&y.iGM(n=y.CRH())&&(t._portalOutlet=n.first)},hostAttrs:[1,"mat-snack-bar-container"],hostVars:1,hostBindings:function(e,t){1&e&&y.WFA("@state.done",function(e){return t.onAnimationEnd(e)}),2&e&&y.d8E("@state",t._animationState)},features:[y.qOj],decls:3,vars:2,consts:[["aria-hidden","true"],["cdkPortalOutlet",""]],template:function(e,t){1&e&&(y.TgZ(0,"div",0),y.YNc(1,zO,0,0,"ng-template",1),y.qZA(),y._UZ(2,"div")),2&e&&(y.xp6(2),y.uIk("aria-live",t._live)("role",t._role))},directives:[SO.Pl],styles:[".mat-snack-bar-container{border-radius:4px;box-sizing:border-box;display:block;margin:24px;max-width:33vw;min-width:344px;padding:14px 16px;min-height:48px;transform-origin:center}.cdk-high-contrast-active .mat-snack-bar-container{border:solid 1px}.mat-snack-bar-handset{width:100%}.mat-snack-bar-handset .mat-snack-bar-container{margin:8px;max-width:100%;min-width:0;width:100%}\n"],encapsulation:2,data:{animation:[WO.snackBarState]}}),e}(),QO=function(){var e=function e(){(0,f.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=y.oAB({type:e}),e.\u0275inj=y.cJS({imports:[[we.U8,SO.eL,_.ez,hO,ut.BQ],ut.BQ]}),e}(),XO=new y.OlP("mat-snack-bar-default-options",{providedIn:"root",factory:function(){return new HO}}),KO=function(){var e=function(){function e(t,n,i,r,o,a){(0,f.Z)(this,e),this._overlay=t,this._live=n,this._injector=i,this._breakpointObserver=r,this._parentSnackBar=o,this._defaultConfig=a,this._snackBarRefAtThisLevel=null,this.simpleSnackBarComponent=GO,this.snackBarContainerComponent=VO,this.handsetCssClass="mat-snack-bar-handset"}return(0,m.Z)(e,[{key:"_openedSnackBarRef",get:function(){var e=this._parentSnackBar;return e?e._openedSnackBarRef:this._snackBarRefAtThisLevel},set:function(e){this._parentSnackBar?this._parentSnackBar._openedSnackBarRef=e:this._snackBarRefAtThisLevel=e}},{key:"openFromComponent",value:function(e,t){return this._attach(e,t)}},{key:"openFromTemplate",value:function(e,t){return this._attach(e,t)}},{key:"open",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2?arguments[2]:void 0,i=Object.assign(Object.assign({},this._defaultConfig),n);return i.data={message:e,action:t},i.announcementMessage===e&&(i.announcementMessage=void 0),this.openFromComponent(this.simpleSnackBarComponent,i)}},{key:"dismiss",value:function(){this._openedSnackBarRef&&this._openedSnackBarRef.dismiss()}},{key:"ngOnDestroy",value:function(){this._snackBarRefAtThisLevel&&this._snackBarRefAtThisLevel.dismiss()}},{key:"_attachSnackBarContainer",value:function(e,t){var n=y.zs3.create({parent:t&&t.viewContainerRef&&t.viewContainerRef.injector||this._injector,providers:[{provide:HO,useValue:t}]}),i=new SO.C5(this.snackBarContainerComponent,t.viewContainerRef,n),r=e.attach(i);return r.instance.snackBarConfig=t,r.instance}},{key:"_attach",value:function(e,t){var n=this,i=Object.assign(Object.assign(Object.assign({},new HO),this._defaultConfig),t),r=this._createOverlay(i),o=this._attachSnackBarContainer(r,i),a=new JO(o,r);if(e instanceof y.Rgc){var s=new SO.UE(e,null,{$implicit:i.data,snackBarRef:a});a.instance=o.attachTemplatePortal(s)}else{var l=this._createInjector(i,a),c=new SO.C5(e,void 0,l),u=o.attachComponentPortal(c);a.instance=u.instance}return this._breakpointObserver.observe("(max-width: 599.98px) and (orientation: portrait)").pipe((0,O.R)(r.detachments())).subscribe(function(e){var t=r.overlayElement.classList;e.matches?t.add(n.handsetCssClass):t.remove(n.handsetCssClass)}),i.announcementMessage&&o._onAnnounce.subscribe(function(){n._live.announce(i.announcementMessage,i.politeness)}),this._animateSnackBar(a,i),this._openedSnackBarRef=a,this._openedSnackBarRef}},{key:"_animateSnackBar",value:function(e,t){var n=this;e.afterDismissed().subscribe(function(){n._openedSnackBarRef==e&&(n._openedSnackBarRef=null),t.announcementMessage&&n._live.clear()}),this._openedSnackBarRef?(this._openedSnackBarRef.afterDismissed().subscribe(function(){e.containerInstance.enter()}),this._openedSnackBarRef.dismiss()):e.containerInstance.enter(),t.duration&&t.duration>0&&e.afterOpened().subscribe(function(){return e._dismissAfter(t.duration)})}},{key:"_createOverlay",value:function(e){var t=new we.X_;t.direction=e.direction;var n=this._overlay.position().global(),i="rtl"===e.direction,r="left"===e.horizontalPosition||"start"===e.horizontalPosition&&!i||"end"===e.horizontalPosition&&i,o=!r&&"center"!==e.horizontalPosition;return r?n.left("0"):o?n.right("0"):n.centerHorizontally(),"top"===e.verticalPosition?n.top("0"):n.bottom("0"),t.positionStrategy=n,this._overlay.create(t)}},{key:"_createInjector",value:function(e,t){return y.zs3.create({parent:e&&e.viewContainerRef&&e.viewContainerRef.injector||this._injector,providers:[{provide:JO,useValue:t},{provide:UO,useValue:e.data}]})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(y.LFG(we.aV),y.LFG(x.Kd),y.LFG(y.zs3),y.LFG(vO),y.LFG(e,12),y.LFG(XO))},e.\u0275prov=y.Yz7({factory:function(){return new e(y.LFG(we.aV),y.LFG(x.Kd),y.LFG(y.gxx),y.LFG(vO),y.LFG(e,12),y.LFG(XO))},token:e,providedIn:QO}),e}(),$O=function(){function e(e,t){this.snackbar=e,this.zone=t,this.snackBarConfigForSuccess={duration:4e3,panelClass:["snackabar-success"],MatSnackBarHorizontalPosition:"center",MatSnackBarVerticalPosition:"bottom"},this.snackBarConfigForWarning={duration:4e3,panelClass:["snackabar-warning"],MatSnackBarHorizontalPosition:"center",MatSnackBarVerticalPosition:"bottom"},this.snackBarConfigForError={duration:1e4,panelClass:["snackabar-error"],MatSnackBarHorizontalPosition:"center",MatSnackBarVerticalPosition:"bottom"}}return e.prototype.error=function(e){var t=this;this.zone.run(function(){t.snackbar.open(e,"Close",t.snackBarConfigForError)})},e.prototype.warning=function(e){var t=this;this.zone.run(function(){t.snackbar.open(e,"Close",t.snackBarConfigForWarning)})},e.prototype.success=function(e){var t=this;this.zone.run(function(){t.snackbar.open(e,"Close",t.snackBarConfigForSuccess)})},e.\u0275fac=function(t){return new(t||e)(y.LFG(KO),y.LFG(y.R0b))},e.\u0275prov=y.Yz7({token:e,factory:e.\u0275fac}),e}(),eE=["*",[["mat-card-footer"]]],tE=["*","mat-card-footer"],nE=function(){var e=function e(){(0,f.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=y.lG2({type:e,selectors:[["mat-card-content"],["","mat-card-content",""],["","matCardContent",""]],hostAttrs:[1,"mat-card-content"]}),e}(),iE=function(){var e=function e(){(0,f.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=y.lG2({type:e,selectors:[["mat-card-title"],["","mat-card-title",""],["","matCardTitle",""]],hostAttrs:[1,"mat-card-title"]}),e}(),rE=function(){var e=function e(){(0,f.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=y.lG2({type:e,selectors:[["mat-card-subtitle"],["","mat-card-subtitle",""],["","matCardSubtitle",""]],hostAttrs:[1,"mat-card-subtitle"]}),e}(),oE=function(){var e=function e(){(0,f.Z)(this,e),this.align="start"};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=y.lG2({type:e,selectors:[["mat-card-actions"]],hostAttrs:[1,"mat-card-actions"],hostVars:2,hostBindings:function(e,t){2&e&&y.ekj("mat-card-actions-align-end","end"===t.align)},inputs:{align:"align"},exportAs:["matCardActions"]}),e}(),aE=function(){var e=function e(t){(0,f.Z)(this,e),this._animationMode=t};return e.\u0275fac=function(t){return new(t||e)(y.Y36(vt.Qb,8))},e.\u0275cmp=y.Xpm({type:e,selectors:[["mat-card"]],hostAttrs:[1,"mat-card","mat-focus-indicator"],hostVars:2,hostBindings:function(e,t){2&e&&y.ekj("_mat-animation-noopable","NoopAnimations"===t._animationMode)},exportAs:["matCard"],ngContentSelectors:tE,decls:2,vars:0,template:function(e,t){1&e&&(y.F$t(eE),y.Hsn(0),y.Hsn(1,1))},styles:[".mat-card{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);display:block;position:relative;padding:16px;border-radius:4px}._mat-animation-noopable.mat-card{transition:none;animation:none}.mat-card .mat-divider-horizontal{position:absolute;left:0;width:100%}[dir=rtl] .mat-card .mat-divider-horizontal{left:auto;right:0}.mat-card .mat-divider-horizontal.mat-divider-inset{position:static;margin:0}[dir=rtl] .mat-card .mat-divider-horizontal.mat-divider-inset{margin-right:0}.cdk-high-contrast-active .mat-card{outline:solid 1px}.mat-card-actions,.mat-card-subtitle,.mat-card-content{display:block;margin-bottom:16px}.mat-card-title{display:block;margin-bottom:8px}.mat-card-actions{margin-left:-8px;margin-right:-8px;padding:8px 0}.mat-card-actions-align-end{display:flex;justify-content:flex-end}.mat-card-image{width:calc(100% + 32px);margin:0 -16px 16px -16px}.mat-card-footer{display:block;margin:0 -16px -16px -16px}.mat-card-actions .mat-button,.mat-card-actions .mat-raised-button,.mat-card-actions .mat-stroked-button{margin:0 8px}.mat-card-header{display:flex;flex-direction:row}.mat-card-header .mat-card-title{margin-bottom:12px}.mat-card-header-text{margin:0 16px}.mat-card-avatar{height:40px;width:40px;border-radius:50%;flex-shrink:0;object-fit:cover}.mat-card-title-group{display:flex;justify-content:space-between}.mat-card-sm-image{width:80px;height:80px}.mat-card-md-image{width:112px;height:112px}.mat-card-lg-image{width:152px;height:152px}.mat-card-xl-image{width:240px;height:240px;margin:-8px}.mat-card-title-group>.mat-card-xl-image{margin:-8px 0 8px}@media(max-width: 599px){.mat-card-title-group{margin:0}.mat-card-xl-image{margin-left:0;margin-right:0}}.mat-card>:first-child,.mat-card-content>:first-child{margin-top:0}.mat-card>:last-child:not(.mat-card-footer),.mat-card-content>:last-child:not(.mat-card-footer){margin-bottom:0}.mat-card-image:first-child{margin-top:-16px;border-top-left-radius:inherit;border-top-right-radius:inherit}.mat-card>.mat-card-actions:last-child{margin-bottom:-8px;padding-bottom:0}.mat-card-actions:not(.mat-card-actions-align-end) .mat-button:first-child,.mat-card-actions:not(.mat-card-actions-align-end) .mat-raised-button:first-child,.mat-card-actions:not(.mat-card-actions-align-end) .mat-stroked-button:first-child{margin-left:0;margin-right:0}.mat-card-actions-align-end .mat-button:last-child,.mat-card-actions-align-end .mat-raised-button:last-child,.mat-card-actions-align-end .mat-stroked-button:last-child{margin-left:0;margin-right:0}.mat-card-title:not(:first-child),.mat-card-subtitle:not(:first-child){margin-top:-4px}.mat-card-header .mat-card-subtitle:not(:first-child){margin-top:-8px}.mat-card>.mat-card-xl-image:first-child{margin-top:-8px}.mat-card>.mat-card-xl-image:last-child{margin-bottom:-8px}\n"],encapsulation:2,changeDetection:0}),e}(),sE=function(){var e=function e(){(0,f.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=y.oAB({type:e}),e.\u0275inj=y.cJS({imports:[[ut.BQ],ut.BQ]}),e}(),lE=n(36410),cE=(n(54562),(0,w.i$)({passive:!0})),uE=function(){var e=function(){function e(t,n){(0,f.Z)(this,e),this._platform=t,this._ngZone=n,this._monitoredElements=new Map}return(0,m.Z)(e,[{key:"monitor",value:function(e){var t=this;if(!this._platform.isBrowser)return lT.E;var n=(0,S.fI)(e),i=this._monitoredElements.get(n);if(i)return i.subject;var r=new C.xQ,o="cdk-text-field-autofilled",a=function(e){"cdk-text-field-autofill-start"!==e.animationName||n.classList.contains(o)?"cdk-text-field-autofill-end"===e.animationName&&n.classList.contains(o)&&(n.classList.remove(o),t._ngZone.run(function(){return r.next({target:e.target,isAutofilled:!1})})):(n.classList.add(o),t._ngZone.run(function(){return r.next({target:e.target,isAutofilled:!0})}))};return this._ngZone.runOutsideAngular(function(){n.addEventListener("animationstart",a,cE),n.classList.add("cdk-text-field-autofill-monitored")}),this._monitoredElements.set(n,{subject:r,unlisten:function(){n.removeEventListener("animationstart",a,cE)}}),r}},{key:"stopMonitoring",value:function(e){var t=(0,S.fI)(e),n=this._monitoredElements.get(t);n&&(n.unlisten(),n.subject.complete(),t.classList.remove("cdk-text-field-autofill-monitored"),t.classList.remove("cdk-text-field-autofilled"),this._monitoredElements.delete(t))}},{key:"ngOnDestroy",value:function(){var e=this;this._monitoredElements.forEach(function(t,n){return e.stopMonitoring(n)})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(y.LFG(w.t4),y.LFG(y.R0b))},e.\u0275prov=y.Yz7({factory:function(){return new e(y.LFG(w.t4),y.LFG(y.R0b))},token:e,providedIn:"root"}),e}(),dE=function(){var e=function e(){(0,f.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=y.oAB({type:e}),e.\u0275inj=y.cJS({imports:[[w.ud]]}),e}(),hE=new y.OlP("MAT_INPUT_VALUE_ACCESSOR"),pE=["button","checkbox","file","hidden","image","radio","range","reset","submit"],fE=0,mE=(0,ut.FD)(function(){return function e(t,n,i,r){(0,f.Z)(this,e),this._defaultErrorStateMatcher=t,this._parentForm=n,this._parentFormGroup=i,this.ngControl=r}}()),gE=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(e,i,r,o,a,s,l,c,u,d){var h;(0,f.Z)(this,n),(h=t.call(this,s,o,a,r))._elementRef=e,h._platform=i,h._autofillMonitor=c,h._formField=d,h._uid="mat-input-".concat(fE++),h.focused=!1,h.stateChanges=new C.xQ,h.controlType="mat-input",h.autofilled=!1,h._disabled=!1,h._required=!1,h._type="text",h._readonly=!1,h._neverEmptyInputTypes=["date","datetime","datetime-local","month","time","week"].filter(function(e){return(0,w.qK)().has(e)});var p=h._elementRef.nativeElement,m=p.nodeName.toLowerCase();return h._inputValueAccessor=l||p,h._previousNativeValue=h.value,h.id=h.id,i.IOS&&u.runOutsideAngular(function(){e.nativeElement.addEventListener("keyup",function(e){var t=e.target;t.value||0!==t.selectionStart||0!==t.selectionEnd||(t.setSelectionRange(1,1),t.setSelectionRange(0,0))})}),h._isServer=!h._platform.isBrowser,h._isNativeSelect="select"===m,h._isTextarea="textarea"===m,h._isInFormField=!!d,h._isNativeSelect&&(h.controlType=p.multiple?"mat-native-select-multiple":"mat-native-select"),h}return(0,m.Z)(n,[{key:"disabled",get:function(){return this.ngControl&&null!==this.ngControl.disabled?this.ngControl.disabled:this._disabled},set:function(e){this._disabled=(0,S.Ig)(e),this.focused&&(this.focused=!1,this.stateChanges.next())}},{key:"id",get:function(){return this._id},set:function(e){this._id=e||this._uid}},{key:"required",get:function(){return this._required},set:function(e){this._required=(0,S.Ig)(e)}},{key:"type",get:function(){return this._type},set:function(e){this._type=e||"text",this._validateType(),!this._isTextarea&&(0,w.qK)().has(this._type)&&(this._elementRef.nativeElement.type=this._type)}},{key:"value",get:function(){return this._inputValueAccessor.value},set:function(e){e!==this.value&&(this._inputValueAccessor.value=e,this.stateChanges.next())}},{key:"readonly",get:function(){return this._readonly},set:function(e){this._readonly=(0,S.Ig)(e)}},{key:"ngAfterViewInit",value:function(){var e=this;this._platform.isBrowser&&this._autofillMonitor.monitor(this._elementRef.nativeElement).subscribe(function(t){e.autofilled=t.isAutofilled,e.stateChanges.next()})}},{key:"ngOnChanges",value:function(){this.stateChanges.next()}},{key:"ngOnDestroy",value:function(){this.stateChanges.complete(),this._platform.isBrowser&&this._autofillMonitor.stopMonitoring(this._elementRef.nativeElement)}},{key:"ngDoCheck",value:function(){this.ngControl&&this.updateErrorState(),this._dirtyCheckNativeValue(),this._dirtyCheckPlaceholder()}},{key:"focus",value:function(e){this._elementRef.nativeElement.focus(e)}},{key:"_focusChanged",value:function(e){e!==this.focused&&(this.focused=e,this.stateChanges.next())}},{key:"_onInput",value:function(){}},{key:"_dirtyCheckPlaceholder",value:function(){var e,t,n=(null===(t=null===(e=this._formField)||void 0===e?void 0:e._hideControlPlaceholder)||void 0===t?void 0:t.call(e))?null:this.placeholder;if(n!==this._previousPlaceholder){var i=this._elementRef.nativeElement;this._previousPlaceholder=n,n?i.setAttribute("placeholder",n):i.removeAttribute("placeholder")}}},{key:"_dirtyCheckNativeValue",value:function(){var e=this._elementRef.nativeElement.value;this._previousNativeValue!==e&&(this._previousNativeValue=e,this.stateChanges.next())}},{key:"_validateType",value:function(){pE.indexOf(this._type)}},{key:"_isNeverEmpty",value:function(){return this._neverEmptyInputTypes.indexOf(this._type)>-1}},{key:"_isBadInput",value:function(){var e=this._elementRef.nativeElement.validity;return e&&e.badInput}},{key:"empty",get:function(){return!(this._isNeverEmpty()||this._elementRef.nativeElement.value||this._isBadInput()||this.autofilled)}},{key:"shouldLabelFloat",get:function(){if(this._isNativeSelect){var e=this._elementRef.nativeElement,t=e.options[0];return this.focused||e.multiple||!this.empty||!!(e.selectedIndex>-1&&t&&t.label)}return this.focused||!this.empty}},{key:"setDescribedByIds",value:function(e){e.length?this._elementRef.nativeElement.setAttribute("aria-describedby",e.join(" ")):this._elementRef.nativeElement.removeAttribute("aria-describedby")}},{key:"onContainerClick",value:function(){this.focused||this.focus()}}]),n}(mE);return e.\u0275fac=function(t){return new(t||e)(y.Y36(y.SBq),y.Y36(w.t4),y.Y36(ct.a5,10),y.Y36(ct.F,8),y.Y36(ct.sg,8),y.Y36(ut.rD),y.Y36(hE,10),y.Y36(uE),y.Y36(y.R0b),y.Y36(lE.G_,8))},e.\u0275dir=y.lG2({type:e,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-input-element","mat-form-field-autofill-control"],hostVars:9,hostBindings:function(e,t){1&e&&y.NdJ("focus",function(){return t._focusChanged(!0)})("blur",function(){return t._focusChanged(!1)})("input",function(){return t._onInput()}),2&e&&(y.Ikx("disabled",t.disabled)("required",t.required),y.uIk("id",t.id)("data-placeholder",t.placeholder)("readonly",t.readonly&&!t._isNativeSelect||null)("aria-invalid",t.empty&&t.required?null:t.errorState)("aria-required",t.required),y.ekj("mat-input-server",t._isServer))},inputs:{id:"id",disabled:"disabled",required:"required",type:"type",value:"value",readonly:"readonly",placeholder:"placeholder",errorStateMatcher:"errorStateMatcher",userAriaDescribedBy:["aria-describedby","userAriaDescribedBy"]},exportAs:["matInput"],features:[y._Bn([{provide:lE.Eo,useExisting:e}]),y.qOj,y.TTD]}),e}(),vE=function(){var e=function e(){(0,f.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=y.oAB({type:e}),e.\u0275inj=y.cJS({providers:[ut.rD],imports:[[dE,lE.lN,ut.BQ],dE,lE.lN]}),e}(),yE=n(73044);function _E(e,t){1&e&&(y.TgZ(0,"mat-error"),y._uU(1,"You must enter a value"),y.qZA())}function bE(e,t){if(1&e&&(y.TgZ(0,"mat-option",14),y._uU(1),y.qZA()),2&e){var n=t.$implicit;y.Q6J("value",n.key),y.xp6(1),y.hij(" ",n.name," ")}}function wE(e,t){if(1&e&&(y.TgZ(0,"mat-option",14),y._uU(1),y.qZA()),2&e){var n=t.$implicit;y.Q6J("value",n.key),y.xp6(1),y.hij(" ",n.name," ")}}function SE(e,t){if(1&e&&(y.TgZ(0,"mat-option",14),y._uU(1),y.qZA()),2&e){var n=t.$implicit;y.Q6J("value",n.key),y.xp6(1),y.hij(" ",n.name," ")}}function xE(e,t){if(1&e&&(y.TgZ(0,"mat-form-field"),y.TgZ(1,"mat-select",15),y.YNc(2,SE,2,2,"mat-option",10),y.qZA(),y.qZA()),2&e){var n=y.oxw();y.xp6(2),y.Q6J("ngForOf",n.authorizations)}}function CE(e,t){1&e&&(y.TgZ(0,"mat-form-field"),y._UZ(1,"input",16),y.qZA())}function kE(e,t){1&e&&(y.TgZ(0,"mat-form-field"),y._UZ(1,"input",17),y.qZA())}var TE=function(){function e(e,t,n,i,r){this.serverService=e,this.serverDatabase=t,this.route=n,this.router=i,this.toasterService=r,this.serverOptionsVisibility=!1,this.authorizations=[{key:"none",name:"No authorization"},{key:"basic",name:"Basic authorization"}],this.protocols=[{key:"http:",name:"HTTP"},{key:"https:",name:"HTTPS"}],this.locations=[{key:"local",name:"Local"},{key:"remote",name:"Remote"}],this.serverForm=new ct.cw({name:new ct.NI("",[ct.kI.required]),location:new ct.NI(""),protocol:new ct.NI("http:"),authorization:new ct.NI("none"),login:new ct.NI(""),password:new ct.NI("")})}return e.prototype.ngOnInit=function(){return(0,FO.mG)(this,void 0,void 0,function(){var e=this;return(0,FO.Jh)(this,function(t){return this.serverService.isServiceInitialized&&this.getServers(),this.serverService.serviceInitialized.subscribe(function(t){return(0,FO.mG)(e,void 0,void 0,function(){return(0,FO.Jh)(this,function(e){return t&&this.getServers(),[2]})})}),[2]})})},e.prototype.getServers=function(){return(0,FO.mG)(this,void 0,void 0,function(){var e,t,n=this;return(0,FO.Jh)(this,function(i){switch(i.label){case 0:return this.serverIp=this.route.snapshot.paramMap.get("server_ip"),this.serverPort=+this.route.snapshot.paramMap.get("server_port"),this.projectId=this.route.snapshot.paramMap.get("project_id"),[4,this.serverService.findAll()];case 1:return e=i.sent(),(t=e.filter(function(e){return e.host===n.serverIp&&e.port===n.serverPort})[0])?this.router.navigate(["/server",t.id,"project",this.projectId]):this.serverOptionsVisibility=!0,[2]}})})},e.prototype.createServer=function(){var e=this;if(this.serverForm.get("name").hasError||this.serverForm.get("location").hasError||this.serverForm.get("protocol").hasError)if("basic"!==this.serverForm.get("authorization").value||this.serverForm.get("login").value||this.serverForm.get("password").value){var t=new kM;t.host=this.serverIp,t.port=this.serverPort,t.name=this.serverForm.get("name").value,t.location=this.serverForm.get("location").value,t.protocol=this.serverForm.get("protocol").value,t.authorization=this.serverForm.get("authorization").value,t.login=this.serverForm.get("login").value,t.password=this.serverForm.get("password").value,this.serverService.create(t).then(function(t){e.router.navigate(["/server",t.id,"project",e.projectId])})}else this.toasterService.error("Please use correct values");else this.toasterService.error("Please use correct values")},e.\u0275fac=function(t){return new(t||e)(y.Y36(AM),y.Y36(BO),y.Y36(kA),y.Y36($Z),y.Y36($O))},e.\u0275cmp=y.Xpm({type:e,selectors:[["app-direct-link"]],decls:23,vars:8,consts:[[1,"content",3,"hidden"],[1,"default-header"],[1,"row"],[1,"col"],[1,"default-content"],[1,"matCard"],[3,"formGroup"],["matInput","","tabindex","1","formControlName","name","placeholder","Name"],[4,"ngIf"],["placeholder","Location","formControlName","location"],[3,"value",4,"ngFor","ngForOf"],["placeholder","Protocol","formControlName","protocol"],[1,"buttons-bar"],["mat-raised-button","","color","primary",3,"click"],[3,"value"],["placeholder","Authorization","formControlName","authorization"],["matInput","","tabindex","1","formControlName","login","placeholder","Login"],["matInput","","type","password","tabindex","1","formControlName","password","placeholder","Password"]],template:function(e,t){1&e&&(y.TgZ(0,"div",0),y.TgZ(1,"div",1),y.TgZ(2,"div",2),y.TgZ(3,"h1",3),y._uU(4,"Add new server"),y.qZA(),y.qZA(),y.qZA(),y.TgZ(5,"div",4),y.TgZ(6,"mat-card",5),y.TgZ(7,"form",6),y.TgZ(8,"mat-form-field"),y._UZ(9,"input",7),y.YNc(10,_E,2,0,"mat-error",8),y.qZA(),y.TgZ(11,"mat-form-field"),y.TgZ(12,"mat-select",9),y.YNc(13,bE,2,2,"mat-option",10),y.qZA(),y.qZA(),y.TgZ(14,"mat-form-field"),y.TgZ(15,"mat-select",11),y.YNc(16,wE,2,2,"mat-option",10),y.qZA(),y.qZA(),y.YNc(17,xE,3,1,"mat-form-field",8),y.YNc(18,CE,2,0,"mat-form-field",8),y.YNc(19,kE,2,0,"mat-form-field",8),y.qZA(),y.qZA(),y.TgZ(20,"div",12),y.TgZ(21,"button",13),y.NdJ("click",function(){return t.createServer()}),y._uU(22,"Add server"),y.qZA(),y.qZA(),y.qZA(),y.qZA()),2&e&&(y.Q6J("hidden",!t.serverOptionsVisibility),y.xp6(7),y.Q6J("formGroup",t.serverForm),y.xp6(3),y.Q6J("ngIf",t.serverForm.get("name").hasError("required")),y.xp6(3),y.Q6J("ngForOf",t.locations),y.xp6(3),y.Q6J("ngForOf",t.protocols),y.xp6(1),y.Q6J("ngIf","remote"===t.serverForm.get("location").value),y.xp6(1),y.Q6J("ngIf","basic"===t.serverForm.get("authorization").value),y.xp6(1),y.Q6J("ngIf","basic"===t.serverForm.get("authorization").value))},directives:[aE,ct._Y,ct.JL,ct.sg,lE.KE,gE,ct.Fj,ct.JJ,ct.u,_.O5,yE.gD,_.sg,uO,lE.TO,ut.ey],styles:["mat-form-field{width:100%}"],encapsulation:2}),e}(),AE=0,ZE=new y.OlP("CdkAccordion"),ME=function(){var e=function(){function e(){(0,f.Z)(this,e),this._stateChanges=new C.xQ,this._openCloseAllActions=new C.xQ,this.id="cdk-accordion-".concat(AE++),this._multi=!1}return(0,m.Z)(e,[{key:"multi",get:function(){return this._multi},set:function(e){this._multi=(0,S.Ig)(e)}},{key:"openAll",value:function(){this._multi&&this._openCloseAllActions.next(!0)}},{key:"closeAll",value:function(){this._openCloseAllActions.next(!1)}},{key:"ngOnChanges",value:function(e){this._stateChanges.next(e)}},{key:"ngOnDestroy",value:function(){this._stateChanges.complete(),this._openCloseAllActions.complete()}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=y.lG2({type:e,selectors:[["cdk-accordion"],["","cdkAccordion",""]],inputs:{multi:"multi"},exportAs:["cdkAccordion"],features:[y._Bn([{provide:ZE,useExisting:e}]),y.TTD]}),e}(),OE=0,EE=function(){var e=function(){function e(t,n,i){var r=this;(0,f.Z)(this,e),this.accordion=t,this._changeDetectorRef=n,this._expansionDispatcher=i,this._openCloseAllSubscription=k.w.EMPTY,this.closed=new y.vpe,this.opened=new y.vpe,this.destroyed=new y.vpe,this.expandedChange=new y.vpe,this.id="cdk-accordion-child-".concat(OE++),this._expanded=!1,this._disabled=!1,this._removeUniqueSelectionListener=function(){},this._removeUniqueSelectionListener=i.listen(function(e,t){r.accordion&&!r.accordion.multi&&r.accordion.id===t&&r.id!==e&&(r.expanded=!1)}),this.accordion&&(this._openCloseAllSubscription=this._subscribeToOpenCloseAllActions())}return(0,m.Z)(e,[{key:"expanded",get:function(){return this._expanded},set:function(e){e=(0,S.Ig)(e),this._expanded!==e&&(this._expanded=e,this.expandedChange.emit(e),e?(this.opened.emit(),this._expansionDispatcher.notify(this.id,this.accordion?this.accordion.id:this.id)):this.closed.emit(),this._changeDetectorRef.markForCheck())}},{key:"disabled",get:function(){return this._disabled},set:function(e){this._disabled=(0,S.Ig)(e)}},{key:"ngOnDestroy",value:function(){this.opened.complete(),this.closed.complete(),this.destroyed.emit(),this.destroyed.complete(),this._removeUniqueSelectionListener(),this._openCloseAllSubscription.unsubscribe()}},{key:"toggle",value:function(){this.disabled||(this.expanded=!this.expanded)}},{key:"close",value:function(){this.disabled||(this.expanded=!1)}},{key:"open",value:function(){this.disabled||(this.expanded=!0)}},{key:"_subscribeToOpenCloseAllActions",value:function(){var e=this;return this.accordion._openCloseAllActions.subscribe(function(t){e.disabled||(e.expanded=t)})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(y.Y36(ZE,12),y.Y36(y.sBO),y.Y36(Se.A8))},e.\u0275dir=y.lG2({type:e,selectors:[["cdk-accordion-item"],["","cdkAccordionItem",""]],inputs:{expanded:"expanded",disabled:"disabled"},outputs:{closed:"closed",opened:"opened",destroyed:"destroyed",expandedChange:"expandedChange"},exportAs:["cdkAccordionItem"],features:[y._Bn([{provide:ZE,useValue:void 0}])]}),e}(),PE=function(){var e=function e(){(0,f.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=y.oAB({type:e}),e.\u0275inj=y.cJS({}),e}(),IE=["body"];function qE(e,t){}var NE=[[["mat-expansion-panel-header"]],"*",[["mat-action-row"]]],DE=["mat-expansion-panel-header","*","mat-action-row"];function RE(e,t){if(1&e&&y._UZ(0,"span",2),2&e){var n=y.oxw();y.Q6J("@indicatorRotate",n._getExpandedState())}}var LE=[[["mat-panel-title"]],[["mat-panel-description"]],"*"],FE=["mat-panel-title","mat-panel-description","*"],BE=new y.OlP("MAT_ACCORDION"),jE="225ms cubic-bezier(0.4,0.0,0.2,1)",zE={indicatorRotate:(0,gt.X$)("indicatorRotate",[(0,gt.SB)("collapsed, void",(0,gt.oB)({transform:"rotate(0deg)"})),(0,gt.SB)("expanded",(0,gt.oB)({transform:"rotate(180deg)"})),(0,gt.eR)("expanded <=> collapsed, void => collapsed",(0,gt.jt)(jE))]),bodyExpansion:(0,gt.X$)("bodyExpansion",[(0,gt.SB)("collapsed, void",(0,gt.oB)({height:"0px",visibility:"hidden"})),(0,gt.SB)("expanded",(0,gt.oB)({height:"*",visibility:"visible"})),(0,gt.eR)("expanded <=> collapsed, void => collapsed",(0,gt.jt)(jE))])},UE=function(){var e=function e(t){(0,f.Z)(this,e),this._template=t};return e.\u0275fac=function(t){return new(t||e)(y.Y36(y.Rgc))},e.\u0275dir=y.lG2({type:e,selectors:[["ng-template","matExpansionPanelContent",""]]}),e}(),HE=0,YE=new y.OlP("MAT_EXPANSION_PANEL_DEFAULT_OPTIONS"),JE=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(e,i,r,o,a,s,l){var c;return(0,f.Z)(this,n),(c=t.call(this,e,i,r))._viewContainerRef=o,c._animationMode=s,c._hideToggle=!1,c.afterExpand=new y.vpe,c.afterCollapse=new y.vpe,c._inputChanges=new C.xQ,c._headerId="mat-expansion-panel-header-".concat(HE++),c._bodyAnimationDone=new C.xQ,c.accordion=e,c._document=a,c._bodyAnimationDone.pipe((0,ft.x)(function(e,t){return e.fromState===t.fromState&&e.toState===t.toState})).subscribe(function(e){"void"!==e.fromState&&("expanded"===e.toState?c.afterExpand.emit():"collapsed"===e.toState&&c.afterCollapse.emit())}),l&&(c.hideToggle=l.hideToggle),c}return(0,m.Z)(n,[{key:"hideToggle",get:function(){return this._hideToggle||this.accordion&&this.accordion.hideToggle},set:function(e){this._hideToggle=(0,S.Ig)(e)}},{key:"togglePosition",get:function(){return this._togglePosition||this.accordion&&this.accordion.togglePosition},set:function(e){this._togglePosition=e}},{key:"_hasSpacing",value:function(){return!!this.accordion&&this.expanded&&"default"===this.accordion.displayMode}},{key:"_getExpandedState",value:function(){return this.expanded?"expanded":"collapsed"}},{key:"toggle",value:function(){this.expanded=!this.expanded}},{key:"close",value:function(){this.expanded=!1}},{key:"open",value:function(){this.expanded=!0}},{key:"ngAfterContentInit",value:function(){var e=this;this._lazyContent&&this.opened.pipe((0,E.O)(null),(0,pt.h)(function(){return e.expanded&&!e._portal}),(0,I.q)(1)).subscribe(function(){e._portal=new SO.UE(e._lazyContent._template,e._viewContainerRef)})}},{key:"ngOnChanges",value:function(e){this._inputChanges.next(e)}},{key:"ngOnDestroy",value:function(){(0,c.Z)((0,u.Z)(n.prototype),"ngOnDestroy",this).call(this),this._bodyAnimationDone.complete(),this._inputChanges.complete()}},{key:"_containsFocus",value:function(){if(this._body){var e=this._document.activeElement,t=this._body.nativeElement;return e===t||t.contains(e)}return!1}}]),n}(EE);return e.\u0275fac=function(t){return new(t||e)(y.Y36(BE,12),y.Y36(y.sBO),y.Y36(Se.A8),y.Y36(y.s_b),y.Y36(_.K0),y.Y36(vt.Qb,8),y.Y36(YE,8))},e.\u0275cmp=y.Xpm({type:e,selectors:[["mat-expansion-panel"]],contentQueries:function(e,t,n){var i;1&e&&y.Suo(n,UE,5),2&e&&y.iGM(i=y.CRH())&&(t._lazyContent=i.first)},viewQuery:function(e,t){var n;1&e&&y.Gf(IE,5),2&e&&y.iGM(n=y.CRH())&&(t._body=n.first)},hostAttrs:[1,"mat-expansion-panel"],hostVars:6,hostBindings:function(e,t){2&e&&y.ekj("mat-expanded",t.expanded)("_mat-animation-noopable","NoopAnimations"===t._animationMode)("mat-expansion-panel-spacing",t._hasSpacing())},inputs:{disabled:"disabled",expanded:"expanded",hideToggle:"hideToggle",togglePosition:"togglePosition"},outputs:{opened:"opened",closed:"closed",expandedChange:"expandedChange",afterExpand:"afterExpand",afterCollapse:"afterCollapse"},exportAs:["matExpansionPanel"],features:[y._Bn([{provide:BE,useValue:void 0}]),y.qOj,y.TTD],ngContentSelectors:DE,decls:7,vars:4,consts:[["role","region",1,"mat-expansion-panel-content",3,"id"],["body",""],[1,"mat-expansion-panel-body"],[3,"cdkPortalOutlet"]],template:function(e,t){1&e&&(y.F$t(NE),y.Hsn(0),y.TgZ(1,"div",0,1),y.NdJ("@bodyExpansion.done",function(e){return t._bodyAnimationDone.next(e)}),y.TgZ(3,"div",2),y.Hsn(4,1),y.YNc(5,qE,0,0,"ng-template",3),y.qZA(),y.Hsn(6,2),y.qZA()),2&e&&(y.xp6(1),y.Q6J("@bodyExpansion",t._getExpandedState())("id",t.id),y.uIk("aria-labelledby",t._headerId),y.xp6(4),y.Q6J("cdkPortalOutlet",t._portal))},directives:[SO.Pl],styles:[".mat-expansion-panel{box-sizing:content-box;display:block;margin:0;border-radius:4px;overflow:hidden;transition:margin 225ms cubic-bezier(0.4, 0, 0.2, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);position:relative}.mat-accordion .mat-expansion-panel:not(.mat-expanded),.mat-accordion .mat-expansion-panel:not(.mat-expansion-panel-spacing){border-radius:0}.mat-accordion .mat-expansion-panel:first-of-type{border-top-right-radius:4px;border-top-left-radius:4px}.mat-accordion .mat-expansion-panel:last-of-type{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.cdk-high-contrast-active .mat-expansion-panel{outline:solid 1px}.mat-expansion-panel.ng-animate-disabled,.ng-animate-disabled .mat-expansion-panel,.mat-expansion-panel._mat-animation-noopable{transition:none}.mat-expansion-panel-content{display:flex;flex-direction:column;overflow:visible}.mat-expansion-panel-body{padding:0 24px 16px}.mat-expansion-panel-spacing{margin:16px 0}.mat-accordion>.mat-expansion-panel-spacing:first-child,.mat-accordion>*:first-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-top:0}.mat-accordion>.mat-expansion-panel-spacing:last-child,.mat-accordion>*:last-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-bottom:0}.mat-action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:16px 8px 16px 24px}.mat-action-row button.mat-button-base,.mat-action-row button.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-action-row button.mat-button-base,[dir=rtl] .mat-action-row button.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"],encapsulation:2,data:{animation:[zE.bodyExpansion]},changeDetection:0}),e}(),GE=(0,ut.sb)(function e(){(0,f.Z)(this,e)}),WE=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(e,i,r,o,a,s,l){var c;(0,f.Z)(this,n),(c=t.call(this)).panel=e,c._element=i,c._focusMonitor=r,c._changeDetectorRef=o,c._animationMode=s,c._parentChangeSubscription=k.w.EMPTY;var u=e.accordion?e.accordion._stateChanges.pipe((0,pt.h)(function(e){return!(!e.hideToggle&&!e.togglePosition)})):lT.E;return c.tabIndex=parseInt(l||"")||0,c._parentChangeSubscription=(0,M.T)(e.opened,e.closed,u,e._inputChanges.pipe((0,pt.h)(function(e){return!!(e.hideToggle||e.disabled||e.togglePosition)}))).subscribe(function(){return c._changeDetectorRef.markForCheck()}),e.closed.pipe((0,pt.h)(function(){return e._containsFocus()})).subscribe(function(){return r.focusVia(i,"program")}),a&&(c.expandedHeight=a.expandedHeight,c.collapsedHeight=a.collapsedHeight),c}return(0,m.Z)(n,[{key:"disabled",get:function(){return this.panel.disabled}},{key:"_toggle",value:function(){this.disabled||this.panel.toggle()}},{key:"_isExpanded",value:function(){return this.panel.expanded}},{key:"_getExpandedState",value:function(){return this.panel._getExpandedState()}},{key:"_getPanelId",value:function(){return this.panel.id}},{key:"_getTogglePosition",value:function(){return this.panel.togglePosition}},{key:"_showToggle",value:function(){return!this.panel.hideToggle&&!this.panel.disabled}},{key:"_getHeaderHeight",value:function(){var e=this._isExpanded();return e&&this.expandedHeight?this.expandedHeight:!e&&this.collapsedHeight?this.collapsedHeight:null}},{key:"_keydown",value:function(e){switch(e.keyCode){case dt.L_:case dt.K5:(0,dt.Vb)(e)||(e.preventDefault(),this._toggle());break;default:return void(this.panel.accordion&&this.panel.accordion._handleHeaderKeydown(e))}}},{key:"focus",value:function(e,t){e?this._focusMonitor.focusVia(this._element,e,t):this._element.nativeElement.focus(t)}},{key:"ngAfterViewInit",value:function(){var e=this;this._focusMonitor.monitor(this._element).subscribe(function(t){t&&e.panel.accordion&&e.panel.accordion._handleHeaderFocus(e)})}},{key:"ngOnDestroy",value:function(){this._parentChangeSubscription.unsubscribe(),this._focusMonitor.stopMonitoring(this._element)}}]),n}(GE);return e.\u0275fac=function(t){return new(t||e)(y.Y36(JE,1),y.Y36(y.SBq),y.Y36(x.tE),y.Y36(y.sBO),y.Y36(YE,8),y.Y36(vt.Qb,8),y.$8M("tabindex"))},e.\u0275cmp=y.Xpm({type:e,selectors:[["mat-expansion-panel-header"]],hostAttrs:["role","button",1,"mat-expansion-panel-header","mat-focus-indicator"],hostVars:15,hostBindings:function(e,t){1&e&&y.NdJ("click",function(){return t._toggle()})("keydown",function(e){return t._keydown(e)}),2&e&&(y.uIk("id",t.panel._headerId)("tabindex",t.tabIndex)("aria-controls",t._getPanelId())("aria-expanded",t._isExpanded())("aria-disabled",t.panel.disabled),y.Udp("height",t._getHeaderHeight()),y.ekj("mat-expanded",t._isExpanded())("mat-expansion-toggle-indicator-after","after"===t._getTogglePosition())("mat-expansion-toggle-indicator-before","before"===t._getTogglePosition())("_mat-animation-noopable","NoopAnimations"===t._animationMode))},inputs:{tabIndex:"tabIndex",expandedHeight:"expandedHeight",collapsedHeight:"collapsedHeight"},features:[y.qOj],ngContentSelectors:FE,decls:5,vars:1,consts:[[1,"mat-content"],["class","mat-expansion-indicator",4,"ngIf"],[1,"mat-expansion-indicator"]],template:function(e,t){1&e&&(y.F$t(LE),y.TgZ(0,"span",0),y.Hsn(1),y.Hsn(2,1),y.Hsn(3,2),y.qZA(),y.YNc(4,RE,1,1,"span",1)),2&e&&(y.xp6(4),y.Q6J("ngIf",t._showToggle()))},directives:[_.O5],styles:['.mat-expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px;border-radius:inherit;transition:height 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel-header._mat-animation-noopable{transition:none}.mat-expansion-panel-header:focus,.mat-expansion-panel-header:hover{outline:none}.mat-expansion-panel-header.mat-expanded:focus,.mat-expansion-panel-header.mat-expanded:hover{background:inherit}.mat-expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before{flex-direction:row-reverse}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 16px 0 0}[dir=rtl] .mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 0 0 16px}.mat-content{display:flex;flex:1;flex-direction:row;overflow:hidden}.mat-expansion-panel-header-title,.mat-expansion-panel-header-description{display:flex;flex-grow:1;margin-right:16px}[dir=rtl] .mat-expansion-panel-header-title,[dir=rtl] .mat-expansion-panel-header-description{margin-right:0;margin-left:16px}.mat-expansion-panel-header-description{flex-grow:2}.mat-expansion-indicator::after{border-style:solid;border-width:0 2px 2px 0;content:"";display:inline-block;padding:3px;transform:rotate(45deg);vertical-align:middle}.cdk-high-contrast-active .mat-expansion-panel .mat-expansion-panel-header.cdk-keyboard-focused:not([aria-disabled=true])::before,.cdk-high-contrast-active .mat-expansion-panel .mat-expansion-panel-header.cdk-program-focused:not([aria-disabled=true])::before,.cdk-high-contrast-active .mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:hover:not([aria-disabled=true])::before{top:0;left:0;right:0;bottom:0;position:absolute;box-sizing:border-box;pointer-events:none;border:3px solid;border-radius:4px;content:""}\n'],encapsulation:2,data:{animation:[zE.indicatorRotate]},changeDetection:0}),e}(),VE=function(){var e=function e(){(0,f.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=y.lG2({type:e,selectors:[["mat-panel-description"]],hostAttrs:[1,"mat-expansion-panel-header-description"]}),e}(),QE=function(){var e=function e(){(0,f.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=y.lG2({type:e,selectors:[["mat-panel-title"]],hostAttrs:[1,"mat-expansion-panel-header-title"]}),e}(),XE=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(){var e;return(0,f.Z)(this,n),(e=t.apply(this,arguments))._ownHeaders=new y.n_E,e._hideToggle=!1,e.displayMode="default",e.togglePosition="after",e}return(0,m.Z)(n,[{key:"hideToggle",get:function(){return this._hideToggle},set:function(e){this._hideToggle=(0,S.Ig)(e)}},{key:"ngAfterContentInit",value:function(){var e=this;this._headers.changes.pipe((0,E.O)(this._headers)).subscribe(function(t){e._ownHeaders.reset(t.filter(function(t){return t.panel.accordion===e})),e._ownHeaders.notifyOnChanges()}),this._keyManager=new x.Em(this._ownHeaders).withWrap().withHomeAndEnd()}},{key:"_handleHeaderKeydown",value:function(e){this._keyManager.onKeydown(e)}},{key:"_handleHeaderFocus",value:function(e){this._keyManager.updateActiveItem(e)}},{key:"ngOnDestroy",value:function(){(0,c.Z)((0,u.Z)(n.prototype),"ngOnDestroy",this).call(this),this._ownHeaders.destroy()}}]),n}(ME);return e.\u0275fac=function(){var t;return function(n){return(t||(t=y.n5z(e)))(n||e)}}(),e.\u0275dir=y.lG2({type:e,selectors:[["mat-accordion"]],contentQueries:function(e,t,n){var i;1&e&&y.Suo(n,WE,5),2&e&&y.iGM(i=y.CRH())&&(t._headers=i)},hostAttrs:[1,"mat-accordion"],hostVars:2,hostBindings:function(e,t){2&e&&y.ekj("mat-accordion-multi",t.multi)},inputs:{multi:"multi",displayMode:"displayMode",togglePosition:"togglePosition",hideToggle:"hideToggle"},exportAs:["matAccordion"],features:[y._Bn([{provide:BE,useExisting:e}]),y.qOj]}),e}(),KE=function(){var e=function e(){(0,f.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=y.oAB({type:e}),e.\u0275inj=y.cJS({imports:[[_.ez,ut.BQ,PE,SO.eL]]}),e}(),$E=n(93386),eP=["*"],tP='.mat-subheader{display:flex;box-sizing:border-box;padding:16px;align-items:center}.mat-list-base .mat-subheader{margin:0}.mat-list-base{padding-top:8px;display:block;-webkit-tap-highlight-color:transparent}.mat-list-base .mat-subheader{height:48px;line-height:16px}.mat-list-base .mat-subheader:first-child{margin-top:-8px}.mat-list-base .mat-list-item,.mat-list-base .mat-list-option{display:block;height:48px;-webkit-tap-highlight-color:transparent;width:100%;padding:0}.mat-list-base .mat-list-item .mat-list-item-content,.mat-list-base .mat-list-option .mat-list-item-content{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;padding:0 16px;position:relative;height:inherit}.mat-list-base .mat-list-item .mat-list-item-content-reverse,.mat-list-base .mat-list-option .mat-list-item-content-reverse{display:flex;align-items:center;padding:0 16px;flex-direction:row-reverse;justify-content:space-around}.mat-list-base .mat-list-item .mat-list-item-ripple,.mat-list-base .mat-list-option .mat-list-item-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-list-base .mat-list-item.mat-list-item-with-avatar,.mat-list-base .mat-list-option.mat-list-item-with-avatar{height:56px}.mat-list-base .mat-list-item.mat-2-line,.mat-list-base .mat-list-option.mat-2-line{height:72px}.mat-list-base .mat-list-item.mat-3-line,.mat-list-base .mat-list-option.mat-3-line{height:88px}.mat-list-base .mat-list-item.mat-multi-line,.mat-list-base .mat-list-option.mat-multi-line{height:auto}.mat-list-base .mat-list-item.mat-multi-line .mat-list-item-content,.mat-list-base .mat-list-option.mat-multi-line .mat-list-item-content{padding-top:16px;padding-bottom:16px}.mat-list-base .mat-list-item .mat-list-text,.mat-list-base .mat-list-option .mat-list-text{display:flex;flex-direction:column;flex:auto;box-sizing:border-box;overflow:hidden;padding:0}.mat-list-base .mat-list-item .mat-list-text>*,.mat-list-base .mat-list-option .mat-list-text>*{margin:0;padding:0;font-weight:normal;font-size:inherit}.mat-list-base .mat-list-item .mat-list-text:empty,.mat-list-base .mat-list-option .mat-list-text:empty{display:none}.mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,.mat-list-base .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,.mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,.mat-list-base .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text{padding-right:0;padding-left:16px}[dir=rtl] .mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text{padding-right:16px;padding-left:0}.mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text{padding-left:0;padding-right:16px}[dir=rtl] .mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text{padding-right:0;padding-left:16px}.mat-list-base .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text,.mat-list-base .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text{padding-right:16px;padding-left:16px}.mat-list-base .mat-list-item .mat-list-avatar,.mat-list-base .mat-list-option .mat-list-avatar{flex-shrink:0;width:40px;height:40px;border-radius:50%;object-fit:cover}.mat-list-base .mat-list-item .mat-list-avatar~.mat-divider-inset,.mat-list-base .mat-list-option .mat-list-avatar~.mat-divider-inset{margin-left:72px;width:calc(100% - 72px)}[dir=rtl] .mat-list-base .mat-list-item .mat-list-avatar~.mat-divider-inset,[dir=rtl] .mat-list-base .mat-list-option .mat-list-avatar~.mat-divider-inset{margin-left:auto;margin-right:72px}.mat-list-base .mat-list-item .mat-list-icon,.mat-list-base .mat-list-option .mat-list-icon{flex-shrink:0;width:24px;height:24px;font-size:24px;box-sizing:content-box;border-radius:50%;padding:4px}.mat-list-base .mat-list-item .mat-list-icon~.mat-divider-inset,.mat-list-base .mat-list-option .mat-list-icon~.mat-divider-inset{margin-left:64px;width:calc(100% - 64px)}[dir=rtl] .mat-list-base .mat-list-item .mat-list-icon~.mat-divider-inset,[dir=rtl] .mat-list-base .mat-list-option .mat-list-icon~.mat-divider-inset{margin-left:auto;margin-right:64px}.mat-list-base .mat-list-item .mat-divider,.mat-list-base .mat-list-option .mat-divider{position:absolute;bottom:0;left:0;width:100%;margin:0}[dir=rtl] .mat-list-base .mat-list-item .mat-divider,[dir=rtl] .mat-list-base .mat-list-option .mat-divider{margin-left:auto;margin-right:0}.mat-list-base .mat-list-item .mat-divider.mat-divider-inset,.mat-list-base .mat-list-option .mat-divider.mat-divider-inset{position:absolute}.mat-list-base[dense]{padding-top:4px;display:block}.mat-list-base[dense] .mat-subheader{height:40px;line-height:8px}.mat-list-base[dense] .mat-subheader:first-child{margin-top:-4px}.mat-list-base[dense] .mat-list-item,.mat-list-base[dense] .mat-list-option{display:block;height:40px;-webkit-tap-highlight-color:transparent;width:100%;padding:0}.mat-list-base[dense] .mat-list-item .mat-list-item-content,.mat-list-base[dense] .mat-list-option .mat-list-item-content{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;padding:0 16px;position:relative;height:inherit}.mat-list-base[dense] .mat-list-item .mat-list-item-content-reverse,.mat-list-base[dense] .mat-list-option .mat-list-item-content-reverse{display:flex;align-items:center;padding:0 16px;flex-direction:row-reverse;justify-content:space-around}.mat-list-base[dense] .mat-list-item .mat-list-item-ripple,.mat-list-base[dense] .mat-list-option .mat-list-item-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar{height:48px}.mat-list-base[dense] .mat-list-item.mat-2-line,.mat-list-base[dense] .mat-list-option.mat-2-line{height:60px}.mat-list-base[dense] .mat-list-item.mat-3-line,.mat-list-base[dense] .mat-list-option.mat-3-line{height:76px}.mat-list-base[dense] .mat-list-item.mat-multi-line,.mat-list-base[dense] .mat-list-option.mat-multi-line{height:auto}.mat-list-base[dense] .mat-list-item.mat-multi-line .mat-list-item-content,.mat-list-base[dense] .mat-list-option.mat-multi-line .mat-list-item-content{padding-top:16px;padding-bottom:16px}.mat-list-base[dense] .mat-list-item .mat-list-text,.mat-list-base[dense] .mat-list-option .mat-list-text{display:flex;flex-direction:column;flex:auto;box-sizing:border-box;overflow:hidden;padding:0}.mat-list-base[dense] .mat-list-item .mat-list-text>*,.mat-list-base[dense] .mat-list-option .mat-list-text>*{margin:0;padding:0;font-weight:normal;font-size:inherit}.mat-list-base[dense] .mat-list-item .mat-list-text:empty,.mat-list-base[dense] .mat-list-option .mat-list-text:empty{display:none}.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,.mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text{padding-right:0;padding-left:16px}[dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text{padding-right:16px;padding-left:0}.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text{padding-left:0;padding-right:16px}[dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-item.mat-list-option .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar .mat-list-item-content-reverse .mat-list-text,[dir=rtl] .mat-list-base[dense] .mat-list-option.mat-list-option .mat-list-item-content-reverse .mat-list-text{padding-right:0;padding-left:16px}.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-item.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content-reverse .mat-list-text,.mat-list-base[dense] .mat-list-option.mat-list-item-with-avatar.mat-list-option .mat-list-item-content .mat-list-text{padding-right:16px;padding-left:16px}.mat-list-base[dense] .mat-list-item .mat-list-avatar,.mat-list-base[dense] .mat-list-option .mat-list-avatar{flex-shrink:0;width:36px;height:36px;border-radius:50%;object-fit:cover}.mat-list-base[dense] .mat-list-item .mat-list-avatar~.mat-divider-inset,.mat-list-base[dense] .mat-list-option .mat-list-avatar~.mat-divider-inset{margin-left:68px;width:calc(100% - 68px)}[dir=rtl] .mat-list-base[dense] .mat-list-item .mat-list-avatar~.mat-divider-inset,[dir=rtl] .mat-list-base[dense] .mat-list-option .mat-list-avatar~.mat-divider-inset{margin-left:auto;margin-right:68px}.mat-list-base[dense] .mat-list-item .mat-list-icon,.mat-list-base[dense] .mat-list-option .mat-list-icon{flex-shrink:0;width:20px;height:20px;font-size:20px;box-sizing:content-box;border-radius:50%;padding:4px}.mat-list-base[dense] .mat-list-item .mat-list-icon~.mat-divider-inset,.mat-list-base[dense] .mat-list-option .mat-list-icon~.mat-divider-inset{margin-left:60px;width:calc(100% - 60px)}[dir=rtl] .mat-list-base[dense] .mat-list-item .mat-list-icon~.mat-divider-inset,[dir=rtl] .mat-list-base[dense] .mat-list-option .mat-list-icon~.mat-divider-inset{margin-left:auto;margin-right:60px}.mat-list-base[dense] .mat-list-item .mat-divider,.mat-list-base[dense] .mat-list-option .mat-divider{position:absolute;bottom:0;left:0;width:100%;margin:0}[dir=rtl] .mat-list-base[dense] .mat-list-item .mat-divider,[dir=rtl] .mat-list-base[dense] .mat-list-option .mat-divider{margin-left:auto;margin-right:0}.mat-list-base[dense] .mat-list-item .mat-divider.mat-divider-inset,.mat-list-base[dense] .mat-list-option .mat-divider.mat-divider-inset{position:absolute}.mat-nav-list a{text-decoration:none;color:inherit}.mat-nav-list .mat-list-item{cursor:pointer;outline:none}mat-action-list button{background:none;color:inherit;border:none;font:inherit;outline:inherit;-webkit-tap-highlight-color:transparent;text-align:left}[dir=rtl] mat-action-list button{text-align:right}mat-action-list button::-moz-focus-inner{border:0}mat-action-list .mat-list-item{cursor:pointer;outline:inherit}.mat-list-option:not(.mat-list-item-disabled){cursor:pointer;outline:none}.mat-list-item-disabled{pointer-events:none}.cdk-high-contrast-active .mat-list-item-disabled{opacity:.5}.cdk-high-contrast-active :host .mat-list-item-disabled{opacity:.5}.cdk-high-contrast-active .mat-selection-list:focus{outline-style:dotted}.cdk-high-contrast-active .mat-list-option:hover,.cdk-high-contrast-active .mat-list-option:focus,.cdk-high-contrast-active .mat-nav-list .mat-list-item:hover,.cdk-high-contrast-active .mat-nav-list .mat-list-item:focus,.cdk-high-contrast-active mat-action-list .mat-list-item:hover,.cdk-high-contrast-active mat-action-list .mat-list-item:focus{outline:dotted 1px}.cdk-high-contrast-active .mat-list-single-selected-option::after{content:"";position:absolute;top:50%;right:16px;transform:translateY(-50%);width:10px;height:0;border-bottom:solid 10px;border-radius:10px}.cdk-high-contrast-active [dir=rtl] .mat-list-single-selected-option::after{right:auto;left:16px}@media(hover: none){.mat-list-option:not(.mat-list-single-selected-option):not(.mat-list-item-disabled):hover,.mat-nav-list .mat-list-item:not(.mat-list-item-disabled):hover,.mat-action-list .mat-list-item:not(.mat-list-item-disabled):hover{background:none}}\n',nP=[[["","mat-list-avatar",""],["","mat-list-icon",""],["","matListAvatar",""],["","matListIcon",""]],[["","mat-line",""],["","matLine",""]],"*"],iP=["[mat-list-avatar], [mat-list-icon], [matListAvatar], [matListIcon]","[mat-line], [matLine]","*"],rP=(0,ut.Id)((0,ut.Kr)(function(){return function e(){(0,f.Z)(this,e)}}())),oP=(0,ut.Kr)(function(){return function e(){(0,f.Z)(this,e)}}()),aP=new y.OlP("MatList"),sP=new y.OlP("MatNavList"),lP=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(){var e;return(0,f.Z)(this,n),(e=t.apply(this,arguments))._stateChanges=new C.xQ,e}return(0,m.Z)(n,[{key:"ngOnChanges",value:function(){this._stateChanges.next()}},{key:"ngOnDestroy",value:function(){this._stateChanges.complete()}}]),n}(rP);return e.\u0275fac=function(){var t;return function(n){return(t||(t=y.n5z(e)))(n||e)}}(),e.\u0275cmp=y.Xpm({type:e,selectors:[["mat-nav-list"]],hostAttrs:["role","navigation",1,"mat-nav-list","mat-list-base"],inputs:{disableRipple:"disableRipple",disabled:"disabled"},exportAs:["matNavList"],features:[y._Bn([{provide:sP,useExisting:e}]),y.qOj,y.TTD],ngContentSelectors:eP,decls:1,vars:0,template:function(e,t){1&e&&(y.F$t(),y.Hsn(0))},styles:[tP],encapsulation:2,changeDetection:0}),e}(),cP=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(e){var i;return(0,f.Z)(this,n),(i=t.call(this))._elementRef=e,i._stateChanges=new C.xQ,"action-list"===i._getListType()&&e.nativeElement.classList.add("mat-action-list"),i}return(0,m.Z)(n,[{key:"_getListType",value:function(){var e=this._elementRef.nativeElement.nodeName.toLowerCase();return"mat-list"===e?"list":"mat-action-list"===e?"action-list":null}},{key:"ngOnChanges",value:function(){this._stateChanges.next()}},{key:"ngOnDestroy",value:function(){this._stateChanges.complete()}}]),n}(rP);return e.\u0275fac=function(t){return new(t||e)(y.Y36(y.SBq))},e.\u0275cmp=y.Xpm({type:e,selectors:[["mat-list"],["mat-action-list"]],hostAttrs:[1,"mat-list","mat-list-base"],inputs:{disableRipple:"disableRipple",disabled:"disabled"},exportAs:["matList"],features:[y._Bn([{provide:aP,useExisting:e}]),y.qOj,y.TTD],ngContentSelectors:eP,decls:1,vars:0,template:function(e,t){1&e&&(y.F$t(),y.Hsn(0))},styles:[tP],encapsulation:2,changeDetection:0}),e}(),uP=function(){var e=function e(){(0,f.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=y.lG2({type:e,selectors:[["","mat-list-avatar",""],["","matListAvatar",""]],hostAttrs:[1,"mat-list-avatar"]}),e}(),dP=function(){var e=function e(){(0,f.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=y.lG2({type:e,selectors:[["","mat-list-icon",""],["","matListIcon",""]],hostAttrs:[1,"mat-list-icon"]}),e}(),hP=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(e,i,r,o){var a;(0,f.Z)(this,n),(a=t.call(this))._element=e,a._isInteractiveList=!1,a._destroyed=new C.xQ,a._disabled=!1,a._isInteractiveList=!!(r||o&&"action-list"===o._getListType()),a._list=r||o;var s=a._getHostElement();return"button"!==s.nodeName.toLowerCase()||s.hasAttribute("type")||s.setAttribute("type","button"),a._list&&a._list._stateChanges.pipe((0,O.R)(a._destroyed)).subscribe(function(){i.markForCheck()}),a}return(0,m.Z)(n,[{key:"disabled",get:function(){return this._disabled||!(!this._list||!this._list.disabled)},set:function(e){this._disabled=(0,S.Ig)(e)}},{key:"ngAfterContentInit",value:function(){(0,ut.E0)(this._lines,this._element)}},{key:"ngOnDestroy",value:function(){this._destroyed.next(),this._destroyed.complete()}},{key:"_isRippleDisabled",value:function(){return!this._isInteractiveList||this.disableRipple||!(!this._list||!this._list.disableRipple)}},{key:"_getHostElement",value:function(){return this._element.nativeElement}}]),n}(oP);return e.\u0275fac=function(t){return new(t||e)(y.Y36(y.SBq),y.Y36(y.sBO),y.Y36(sP,8),y.Y36(aP,8))},e.\u0275cmp=y.Xpm({type:e,selectors:[["mat-list-item"],["a","mat-list-item",""],["button","mat-list-item",""]],contentQueries:function(e,t,n){var i;1&e&&(y.Suo(n,uP,5),y.Suo(n,dP,5),y.Suo(n,ut.X2,5)),2&e&&(y.iGM(i=y.CRH())&&(t._avatar=i.first),y.iGM(i=y.CRH())&&(t._icon=i.first),y.iGM(i=y.CRH())&&(t._lines=i))},hostAttrs:[1,"mat-list-item","mat-focus-indicator"],hostVars:6,hostBindings:function(e,t){2&e&&y.ekj("mat-list-item-disabled",t.disabled)("mat-list-item-avatar",t._avatar||t._icon)("mat-list-item-with-avatar",t._avatar||t._icon)},inputs:{disableRipple:"disableRipple",disabled:"disabled"},exportAs:["matListItem"],features:[y.qOj],ngContentSelectors:iP,decls:6,vars:2,consts:[[1,"mat-list-item-content"],["mat-ripple","",1,"mat-list-item-ripple",3,"matRippleTrigger","matRippleDisabled"],[1,"mat-list-text"]],template:function(e,t){1&e&&(y.F$t(nP),y.TgZ(0,"div",0),y._UZ(1,"div",1),y.Hsn(2),y.TgZ(3,"div",2),y.Hsn(4,1),y.qZA(),y.Hsn(5,2),y.qZA()),2&e&&(y.xp6(1),y.Q6J("matRippleTrigger",t._getHostElement())("matRippleDisabled",t._isRippleDisabled()))},directives:[ut.wG],encapsulation:2,changeDetection:0}),e}(),pP=function(){var e=function e(){(0,f.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=y.oAB({type:e}),e.\u0275inj=y.cJS({imports:[[ut.uc,ut.si,ut.BQ,ut.us,_.ez],ut.uc,ut.BQ,ut.us,$E.t]}),e}(),fP=function(){function e(e){this.httpClient=e,this.thirdpartylicenses="",this.releasenotes=""}return e.prototype.ngOnInit=function(){var e=this;this.httpClient.get(window.location.href+"/3rdpartylicenses.txt",{responseType:"text"}).subscribe(function(t){e.thirdpartylicenses=t.replace(new RegExp("\n","g"),"
")},function(t){404===t.status&&(e.thirdpartylicenses="File not found")}),this.httpClient.get("ReleaseNotes.txt",{responseType:"text"}).subscribe(function(t){e.releasenotes=t.replace(new RegExp("\n","g"),"
")})},e.prototype.goToDocumentation=function(){window.location.href="https://docs.gns3.com/docs/"},e.\u0275fac=function(t){return new(t||e)(y.Y36(lt.eN))},e.\u0275cmp=y.Xpm({type:e,selectors:[["app-help"]],decls:38,vars:2,consts:[[1,"content"],[1,"default-header"],[1,"default-content"],[1,"container","mat-elevation-z8"],[3,"innerHTML"],["mat-button","","color","primary",1,"full-width",3,"click"]],template:function(e,t){1&e&&(y.TgZ(0,"div",0),y.TgZ(1,"div",1),y.TgZ(2,"h1"),y._uU(3,"Help"),y.qZA(),y.qZA(),y.TgZ(4,"div",2),y.TgZ(5,"div",3),y.TgZ(6,"mat-accordion"),y.TgZ(7,"mat-expansion-panel"),y.TgZ(8,"mat-expansion-panel-header"),y.TgZ(9,"mat-panel-title"),y._uU(10," Useful shortcuts "),y.qZA(),y.qZA(),y.TgZ(11,"mat-list"),y.TgZ(12,"mat-list-item"),y._uU(13," ctrl + + to zoom in "),y.qZA(),y.TgZ(14,"mat-list-item"),y._uU(15," ctrl + - to zoom out "),y.qZA(),y.TgZ(16,"mat-list-item"),y._uU(17," ctrl + 0 to reset zoom "),y.qZA(),y.TgZ(18,"mat-list-item"),y._uU(19," ctrl + h to hide toolbar "),y.qZA(),y.TgZ(20,"mat-list-item"),y._uU(21," ctrl + a to select all items on map "),y.qZA(),y.TgZ(22,"mat-list-item"),y._uU(23," ctrl + shift + a to deselect all items on map "),y.qZA(),y.TgZ(24,"mat-list-item"),y._uU(25," ctrl + shift + s to go to preferences "),y.qZA(),y.qZA(),y.qZA(),y.TgZ(26,"mat-expansion-panel"),y.TgZ(27,"mat-expansion-panel-header"),y.TgZ(28,"mat-panel-title"),y._uU(29," Third party components "),y.qZA(),y.qZA(),y._UZ(30,"div",4),y.qZA(),y.TgZ(31,"mat-expansion-panel"),y.TgZ(32,"mat-expansion-panel-header"),y.TgZ(33,"mat-panel-title"),y._uU(34," Release notes "),y.qZA(),y.qZA(),y._UZ(35,"div",4),y.qZA(),y.qZA(),y.qZA(),y.TgZ(36,"button",5),y.NdJ("click",function(){return t.goToDocumentation()}),y._uU(37,"Go to documentation"),y.qZA(),y.qZA(),y.qZA()),2&e&&(y.xp6(30),y.Q6J("innerHTML",t.thirdpartylicenses,y.oJD),y.xp6(5),y.Q6J("innerHTML",t.releasenotes,y.oJD))},directives:[XE,JE,WE,QE,cP,hP,uO],styles:[".full-width[_ngcontent-%COMP%]{width:100%;margin-top:20px}"]}),e}(),mP=function(){function e(e){this.electronService=e}return e.prototype.isWindows=function(){return"win32"===this.electronService.process.platform},e.prototype.isLinux=function(){return"linux"===this.electronService.process.platform},e.prototype.isDarwin=function(){return"darwin"===this.electronService.process.platform},e.\u0275fac=function(t){return new(t||e)(y.LFG(tT))},e.\u0275prov=y.Yz7({token:e,factory:e.\u0275fac}),e}(),gP=function(){function e(e){this.platformService=e}return e.prototype.get=function(){return this.platformService.isWindows()?this.getForWindows():this.platformService.isDarwin()?this.getForDarwin():this.getForLinux()},e.prototype.getForWindows=function(){return[{name:"Wireshark",locations:["C:\\Program Files\\Wireshark\\Wireshark.exe"],type:"web",resource:"https://1.na.dl.wireshark.org/win64/all-versions/Wireshark-win64-2.6.3.exe",binary:"Wireshark.exe",sudo:!0,installation_arguments:[],installed:!1,installer:!0}]},e.prototype.getForLinux=function(){return[]},e.prototype.getForDarwin=function(){return[]},e.\u0275fac=function(t){return new(t||e)(y.LFG(mP))},e.\u0275prov=y.Yz7({token:e,factory:e.\u0275fac}),e}(),vP=function(){function e(e,t){this.electronService=e,this.externalSoftwareDefinition=t}return e.prototype.list=function(){var e=this.externalSoftwareDefinition.get(),t=this.electronService.remote.require("./installed-software.js").getInstalledSoftware(e);return e.map(function(e){return e.installed=t[e.name].length>0,e})},e.\u0275fac=function(t){return new(t||e)(y.LFG(tT),y.LFG(gP))},e.\u0275prov=y.Yz7({token:e,factory:e.\u0275fac}),e}(),yP=[[["caption"]],[["colgroup"],["col"]]],_P=["caption","colgroup, col"],bP=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(){var e;return(0,f.Z)(this,n),(e=t.apply(this,arguments)).stickyCssClass="mat-table-sticky",e.needsPositionStickyOnElement=!1,e}return n}(ot);return e.\u0275fac=function(){var t;return function(n){return(t||(t=y.n5z(e)))(n||e)}}(),e.\u0275cmp=y.Xpm({type:e,selectors:[["mat-table"],["table","mat-table",""]],hostAttrs:[1,"mat-table"],hostVars:2,hostBindings:function(e,t){2&e&&y.ekj("mat-table-fixed-layout",t.fixedLayout)},exportAs:["matTable"],features:[y._Bn([{provide:Se.k,useClass:Se.yy},{provide:ot,useExisting:e},{provide:Oe,useExisting:e},{provide:Be,useClass:je},{provide:et,useValue:null}]),y.qOj],ngContentSelectors:_P,decls:6,vars:0,consts:[["headerRowOutlet",""],["rowOutlet",""],["noDataRowOutlet",""],["footerRowOutlet",""]],template:function(e,t){1&e&&(y.F$t(yP),y.Hsn(0),y.Hsn(1,1),y.GkF(2,0),y.GkF(3,1),y.GkF(4,2),y.GkF(5,3))},directives:[nt,tt,rt,it],styles:['mat-table{display:block}mat-header-row{min-height:56px}mat-row,mat-footer-row{min-height:48px}mat-row,mat-header-row,mat-footer-row{display:flex;border-width:0;border-bottom-width:1px;border-style:solid;align-items:center;box-sizing:border-box}mat-row::after,mat-header-row::after,mat-footer-row::after{display:inline-block;min-height:inherit;content:""}mat-cell:first-of-type,mat-header-cell:first-of-type,mat-footer-cell:first-of-type{padding-left:24px}[dir=rtl] mat-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:first-of-type:not(:only-of-type){padding-left:0;padding-right:24px}mat-cell:last-of-type,mat-header-cell:last-of-type,mat-footer-cell:last-of-type{padding-right:24px}[dir=rtl] mat-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:last-of-type:not(:only-of-type){padding-right:0;padding-left:24px}mat-cell,mat-header-cell,mat-footer-cell{flex:1;display:flex;align-items:center;overflow:hidden;word-wrap:break-word;min-height:inherit}table.mat-table{border-spacing:0}tr.mat-header-row{height:56px}tr.mat-row,tr.mat-footer-row{height:48px}th.mat-header-cell{text-align:left}[dir=rtl] th.mat-header-cell{text-align:right}th.mat-header-cell,td.mat-cell,td.mat-footer-cell{padding:0;border-bottom-width:1px;border-bottom-style:solid}th.mat-header-cell:first-of-type,td.mat-cell:first-of-type,td.mat-footer-cell:first-of-type{padding-left:24px}[dir=rtl] th.mat-header-cell:first-of-type:not(:only-of-type),[dir=rtl] td.mat-cell:first-of-type:not(:only-of-type),[dir=rtl] td.mat-footer-cell:first-of-type:not(:only-of-type){padding-left:0;padding-right:24px}th.mat-header-cell:last-of-type,td.mat-cell:last-of-type,td.mat-footer-cell:last-of-type{padding-right:24px}[dir=rtl] th.mat-header-cell:last-of-type:not(:only-of-type),[dir=rtl] td.mat-cell:last-of-type:not(:only-of-type),[dir=rtl] td.mat-footer-cell:last-of-type:not(:only-of-type){padding-right:0;padding-left:24px}.mat-table-sticky{position:-webkit-sticky !important;position:sticky !important}.mat-table-fixed-layout{table-layout:fixed}\n'],encapsulation:2}),e}(),wP=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(){return(0,f.Z)(this,n),t.apply(this,arguments)}return n}(Ee);return e.\u0275fac=function(){var t;return function(n){return(t||(t=y.n5z(e)))(n||e)}}(),e.\u0275dir=y.lG2({type:e,selectors:[["","matCellDef",""]],features:[y._Bn([{provide:Ee,useExisting:e}]),y.qOj]}),e}(),SP=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(){return(0,f.Z)(this,n),t.apply(this,arguments)}return n}(Pe);return e.\u0275fac=function(){var t;return function(n){return(t||(t=y.n5z(e)))(n||e)}}(),e.\u0275dir=y.lG2({type:e,selectors:[["","matHeaderCellDef",""]],features:[y._Bn([{provide:Pe,useExisting:e}]),y.qOj]}),e}(),xP=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(){return(0,f.Z)(this,n),t.apply(this,arguments)}return(0,m.Z)(n,[{key:"name",get:function(){return this._name},set:function(e){this._setNameInput(e)}},{key:"_updateColumnCssClassName",value:function(){(0,c.Z)((0,u.Z)(n.prototype),"_updateColumnCssClassName",this).call(this),this._columnCssClassName.push("mat-column-".concat(this.cssClassFriendlyName))}}]),n}(Ne);return e.\u0275fac=function(){var t;return function(n){return(t||(t=y.n5z(e)))(n||e)}}(),e.\u0275dir=y.lG2({type:e,selectors:[["","matColumnDef",""]],inputs:{sticky:"sticky",name:["matColumnDef","name"]},features:[y._Bn([{provide:Ne,useExisting:e},{provide:"MAT_SORT_HEADER_COLUMN_DEF",useExisting:e}]),y.qOj]}),e}(),CP=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(){return(0,f.Z)(this,n),t.apply(this,arguments)}return n}(Re);return e.\u0275fac=function(){var t;return function(n){return(t||(t=y.n5z(e)))(n||e)}}(),e.\u0275dir=y.lG2({type:e,selectors:[["mat-header-cell"],["th","mat-header-cell",""]],hostAttrs:["role","columnheader",1,"mat-header-cell"],features:[y.qOj]}),e}(),kP=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(){return(0,f.Z)(this,n),t.apply(this,arguments)}return n}(Le);return e.\u0275fac=function(){var t;return function(n){return(t||(t=y.n5z(e)))(n||e)}}(),e.\u0275dir=y.lG2({type:e,selectors:[["mat-cell"],["td","mat-cell",""]],hostAttrs:["role","gridcell",1,"mat-cell"],features:[y.qOj]}),e}(),TP=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(){return(0,f.Z)(this,n),t.apply(this,arguments)}return n}(He);return e.\u0275fac=function(){var t;return function(n){return(t||(t=y.n5z(e)))(n||e)}}(),e.\u0275dir=y.lG2({type:e,selectors:[["","matHeaderRowDef",""]],inputs:{columns:["matHeaderRowDef","columns"],sticky:["matHeaderRowDefSticky","sticky"]},features:[y._Bn([{provide:He,useExisting:e}]),y.qOj]}),e}(),AP=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(){return(0,f.Z)(this,n),t.apply(this,arguments)}return n}(Ge);return e.\u0275fac=function(){var t;return function(n){return(t||(t=y.n5z(e)))(n||e)}}(),e.\u0275dir=y.lG2({type:e,selectors:[["","matRowDef",""]],inputs:{columns:["matRowDefColumns","columns"],when:["matRowDefWhen","when"]},features:[y._Bn([{provide:Ge,useExisting:e}]),y.qOj]}),e}(),ZP=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(){return(0,f.Z)(this,n),t.apply(this,arguments)}return n}(Ve);return e.\u0275fac=function(){var t;return function(n){return(t||(t=y.n5z(e)))(n||e)}}(),e.\u0275cmp=y.Xpm({type:e,selectors:[["mat-header-row"],["tr","mat-header-row",""]],hostAttrs:["role","row",1,"mat-header-row"],exportAs:["matHeaderRow"],features:[y._Bn([{provide:Ve,useExisting:e}]),y.qOj],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(e,t){1&e&&y.GkF(0,0)},directives:[We],encapsulation:2}),e}(),MP=function(){var e=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(){return(0,f.Z)(this,n),t.apply(this,arguments)}return n}(Qe);return e.\u0275fac=function(){var t;return function(n){return(t||(t=y.n5z(e)))(n||e)}}(),e.\u0275cmp=y.Xpm({type:e,selectors:[["mat-row"],["tr","mat-row",""]],hostAttrs:["role","row",1,"mat-row"],exportAs:["matRow"],features:[y._Bn([{provide:Qe,useExisting:e}]),y.qOj],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(e,t){1&e&&y.GkF(0,0)},directives:[We],encapsulation:2}),e}(),OP=function(){var e=function e(){(0,f.Z)(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=y.oAB({type:e}),e.\u0275inj=y.cJS({imports:[[st,ut.BQ],ut.BQ]}),e}(),EP=9007199254740991,PP=function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(){return(0,f.Z)(this,n),t.apply(this,arguments)}return n}(function(e){(0,d.Z)(n,e);var t=(0,h.Z)(n);function n(){var e,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return(0,f.Z)(this,n),(e=t.call(this))._renderData=new Ce.X([]),e._filter=new Ce.X(""),e._internalPageChanges=new C.xQ,e._renderChangesSubscription=null,e.sortingDataAccessor=function(e,t){var n=e[t];if((0,S.t6)(n)){var i=Number(n);return ia?c=1:o0)){var i=Math.ceil(n.length/n.pageSize)-1||0,r=Math.min(n.pageIndex,i);r!==n.pageIndex&&(n.pageIndex=r,t._internalPageChanges.next())}})}},{key:"connect",value:function(){return this._renderChangesSubscription||this._updateChangeSubscription(),this._renderData}},{key:"disconnect",value:function(){var e;null===(e=this._renderChangesSubscription)||void 0===e||e.unsubscribe(),this._renderChangesSubscription=null}}]),n}(Se.o2)),IP=n(15132),qP=function(e,t){return{hidden:e,lightTheme:t}},NP=/(.*)<\/a>(.*)\s*